我需要一种方法来阻止我的主要样本被执行,同时也停止我的测试。

我已经阅读了关于stackoverflow的文章,但这并不妨碍执行主样本。 JMeter - Stop Thread from within a BeanShell PreProcessor

我在JMeter 3.2中有一个HTTP采样器(除了BeanShell采样器之外,还可以是其他任何采样器),其BeanShell PreProcessor包含以下代码行:

org.apache.jmeter.engine.StandardJMeterEngine.stopThread(Thread.currentThread().getName());


现在这确实停止了我的测试,但是并没有在执行主样本之后停止。
因此,我需要一些可以停止测试并阻止执行主样本的东西。

任何帮助将不胜感激!

最佳答案

只需在需要时调用ctx.getEngine().askThreadsToStop(),它将正常关闭。

更多的“硬”方法是:

ctx.getEngine().stopTest();


甚至

System.exit(1);




请记住,使用Beanshell编写脚本是not recommended,从JMeter 3.1开始,鼓励用户切换到JSR223 Test ElementsGroovy语言,有关详细信息,请查看Apache Groovy - Why and How You Should Use It

10-02 03:29
查看更多