如何使用jmeter和groovy在我的IF CONTROLLER中添加条件

时间:2018-03-22 16:29:08

标签: groovy jmeter jmeter-3.2

我正在使用jmeter 3.3和groovy并且有一个IF CONDITION,它根据响应代码进行过滤。

这是我正在做的事情并且有效:

${__jexl3(${code} != 000)} 

现在我想在此条件或OR逻辑

中添加AND逻辑

例如这样做:

${__jexl3(${code} != 000)} && ${__jexl3(${code} != 901)}

但这似乎不起作用。

添加逻辑运算符的正确方法是什么?

2 个答案:

答案 0 :(得分:2)

如果您将声明更改为

${__jexl3(${code} != 000 && ${code} != 000)} 

它会起作用(即你在相同的 jexl3 评估下拉出两个条件)。

问题是,你根本不需要jexl3评估。您的如果Controller 将默认使用JavaScript,因此可以像这样配置:

enter image description here

所以你的代码可以

${code} != 000 && ${code} != 000

(当然把相同的条件放在那里没有多大意义,但我认为这是一个例子)

答案 1 :(得分:2)

  • 如果您需要JEXL,则需要使用单个函数调用而不是2个单独的函数:

    ${__jexl3("${code}" != "000" && "${code}" != "901" ,)}
    
  • 如果您想使用Groovy - 请将变量称为vars.get('code'),如:

    ${__groovy((!vars.get('code').equals('000') && !vars.get('code').equals('901')),)}
    

更多信息:6 Tips for JMeter If Controller Usage