2017-04-07 46 views
0

我已经把在控制器中的条件:${__javaScript("${status5}" != "SUCCESS" && parseInt("${counter}") < 5,)},投放,而控制器的计数器。还可以为每个用户独立跟踪计数器,并为每个线程组迭代重置计数器。的JMeter:虽然控制器计数器不允许线程退出,如果条件得不到满足

一旦HTTP采样器被调用,我添加了Beanshell后处理器来捕获文件中的响应值。

对100个线程和10次迭代运行测试时,某些线程失败并重复尝试直到迭代次数为5次,但随后进一步进行。看起来它只检查第一次迭代,然后不能移动到下一次迭代。我没有在jemter.log或outofmemory上看到任何错误,但它只是挂在那里。

你能帮我理解为什么线程没有进步吗?我的验证有问题吗?或在控制器?

+0

你可以只用 “$ {} STATUS5” 和 “$ {}柜台” 试试? –

回答

0

你不需要parseInt() function here,JavaScript是类型不可知的,所以我会建议改变你的病情线以下:

${__javaScript(("${status5}" != "SUCCESS" && ${counter} < 5),)} 

Using the While Controller in JMeter文章在JMeter的测试条件循环的更多信息。

+0

在使用parseInt之前,我曾尝试使用$ {counter} <5,但它抛出错误。我已经提到了相同的链接柜台,它不工作。 –