JMeter如果(If)控制器
采用JMeter 5.2.1版本,界面如下:
![](https://img2020.cnblogs.com/blog/718867/202005/718867-20200520224219924-2079868301.png)
选项配置说明
对于新版本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
优秀不够,你是否无可替代
软件测试交流QQ群:721256703,期待你的加入!!
欢迎关注我的微信公众号:软件测试君
![](https://www.cnblogs.com/images/cnblogs_com/longronglang/1061549/o_QQ%E6%88%AA%E5%9B%BE20190728134401.jpg)