jmeter根据第一个请求得到的结果决定第二个请求是否需要执行(使用jmeter逻辑控制器之if控制器)

1、线程组下添加第一个请求并提取结果作为参数

 

2、在线程组下添加------------->逻辑控制器---------------->(if)控制器

 

if逻辑控制器中最重要的就是Expression(must evaluate to true or false)输入框,此处需要写入用于进行判断的表达式,从must evaluate true or false 可知,实际使用时,只能填入true或false这样的值

 

 ,因此我们需要借助其他模块或者函数将需要进行判断的表达式 如:${result}==1 转换成true或者false,判断才能生效,否则无效

从控制器的提示信息中可以知道可以使用函数_jexl3或_groovy来进行转换。

jelx全称:Jakarta Commons Jexl 是一种表达式语言(Java Expression Language)解释器

使用函数时表达式不会写可借助函数助手:

 

 

 

 

 

 

 将生成出来的表达式复制进if控制器的输入框即可。

表达式支持:

       ==   是否等于,如${__jexl3(${VAR}==1,)},判断${VAR}变量是否等于1

      !=  不等于,如${__jexl3(${VAR}!=1,)},判断${VAR}变量是否不等于1

     !  非,如${__jexl3(!(${VAR}!=1),)}对${VAR}!=1的结果取反

      &&或||  且与或,如  ${__jexl3(${VAR}==1 && ${name} != "heima",)}

      > 或者>==   大于等于,如${__jexl3(${count}>=10,)}

3、在(if)控制器下添加需要执行的第二个请求

 

posted @   求学的测试小白  阅读(962)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
点击右上角即可分享
微信分享提示