我想基于 responseCode 控制我的采样器,并且需要运行n个在计数器中定义的时间。
我使用了while控制器,并使用了如下所述的条件,但是它没有按预期工作。
我在控制器jmeter中的状态:
${((${ctx.getPreviousResult().getResponseCode()} == "200" && ${counter} < 5),)}
但是它没有按预期工作,您能不能请某人在这方面帮助我。
答案 0 :(得分:0)
响应代码是int尝试使用的
($ {ctx.getPreviousResult()。getResponseCode()== 200} && $ {counter} <5)
没有双引号
答案 1 :(得分:0)
您的条件格式不正确,您需要使用__jexl3()或__groovy()函数,其评估结果返回true
。也可以是值true
的{{3}},可以在其他位置将其设置为false
。但是您的表达式将被“按原样”解释,并且不会被评估。
建议的修订:
${__groovy(!ctx.getPreviousResult().getResponseCode().equals('200') && (vars.get('counter') as int) < 5,)}
更多信息:JMeter Variable