采用JMeter 5.2.1版本,界面如下:
选项配置说明
对于新版本JMeter4.0,IF Controller的Expression输入框中不能直接填写判断条件的表达式,需要将利用__jexl3函数或__groovy函数将条件表达式求值计算为true/false
才有效
具体可参看此文==>[JM]"Interpret Condition as Variable Expression" and use __jexl3 or _groovy evaluating to...解决方案
根据警告信息,建议勾选Interpret Condition as Variable Expression?
条件判断语句若是字符串,则需要用引号包围参数,如:"istrue" == "1"
选择"Evaluate for all children?"代表该If控制器在每个子节点执行时都会执行一次,不选择则代表If控制器只在入口执行一次
If Controller之下的请求才会受到If控制器的约束,若是平级则不会受约束;因此建议将业务请求放在If控制器之下进行测试
依从以上规则,填写到Expression输入框中的的内容,样式如:${__groovy("${istrue}" == "1",)}
参考链接:https://www.jianshu.com/p/1e7a60ae49d1