如何在jmeter中为特定条件停止线程?

时间:2016-07-14 07:27:56

标签: jmeter performance-testing

我正在一个有多个选项的网站上进行测试。

**例如,**

  

让我们在主页(第一个采样器)上说我们有两个选项选项A.   和选项B.因此,如果我选择选项,它将导航到另一个页面   (第二个采样器)并向我展示关于选项A和来自的一些结果   那些结果我会点击任何一个结果然后转到下一个   页面(第三个采样器)。

但是当我点击主页上的选项B(第一个采样器)时,没有结果显示我(在第二个采样器中)所以我不希望它导航并执行第三个采样器。

如果选项B的结果页面中没有结果,我想停止执行。我应该如何在JMeter中实现它。

2 个答案:

答案 0 :(得分:1)

要完成此操作,您需要使用以下代码在选项B 上添加Beanshell post-processor

import org.apache.jmeter.threads.JMeterContextService;

String prevResult = JMeterContextService.getContext()
                        .getPreviousResult().getResponseDataAsString();

if(prevResult == null || prevResult.isEmpty()) // | ---> ||
      JMeterContextService.getContext().getThread().stop();

这将检查先前的响应以及其是否为空当前线程。如果响应不为空,则测试执行将继续。

答案 1 :(得分:0)