我需要一种方法来阻止我的主要样本被执行并停止我的测试。
我已经在stackoverflow上阅读了这篇文章,但这并不妨碍主要样本的执行。 JMeter - Stop Thread from within a BeanShell PreProcessor
我在JMeter 3.2中有一个HTTP采样器(可能是除BeanShell采样器之外的任何其他示例),其中包含以下代码行的BeanShell预处理器:
org.apache.jmeter.engine.StandardJMeterEngine.stopThread(Thread.currentThread().getName());
现在这确实会停止我的测试但不会在执行主样本后停止。 所以我需要一些能够阻止我的测试的东西,并阻止主样本被执行。
非常感谢任何帮助!
答案 0 :(得分:4)
只需在需要时调用ctx.getEngine().askThreadsToStop()
,它就会执行正常关机。
更多“硬”方法是:
ctx.getEngine().stopTest();
甚至
System.exit(1);
请记住,使用Beanshell进行脚本编写是not recommended,从JMeter 3.1开始,我们鼓励用户切换到JSR223 Test Elements和Groovy语言,有关详细信息,请查看Apache Groovy - Why and How You Should Use It。