Jmeter性能测试之if控制器的使用

使用if控制器有两种方式:
1.不勾选“interpret condition as variable expression”
直接输入我们需要判断的表达式即可,判断表达式为真时,执行if控制器下的请求,例如“1!=2”,则一定会执行下面的http请求

 

在这里插入图片描述

 2.勾选“interpret condition as variable expression”
这时expression中不能直接填写条件表达式,需要借助函数将条件表达式计算为true/false,可以借助的函数有_jexl3和_groovy,例如:直接填写${modelId}==5,是不能识别的
a.借助函数助手,生成表达式

在这里插入图片描述

 b.把生成的表达式,写在if控制器中

在这里插入图片描述

 c.然后if控制器就可以读取到判断内容啦,当条件为true时,执行下面的请求。

if逻辑控制器控件中最重要就是Expression(must evaluate true or false)输入框,此处需要写入需要进行判断的表达式,从must evaluate true or false可知,实际使用时,只能填入true或者false这样的值,因此我们需要借助其他模块或者函数将需要进行判断的表达式(如 ${var}== 5)转换成true或false,判断才能生效,直接将${var}== 5这样的表达式写入Expression中是无效的。

从该控制器提示的信息中,可以借助__jexl3或者__groovy函数来计算表达式的值,这样着重介绍下__jexl3在 if控制器中的使用。

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

JEXL Expression to evaluate:此处直接填写需要进行判断的表达式即可

表达式支持:

  • ==    是否等于,如${__jexl3(${VAR}==1,)},判断${VAR}变量是否等于1
  • !=  不等于,如${__jexl3(${VAR}!=1,)},判断${VAR}变量是否不等于1
  • !    非,如${__jexl3(!(${VAR}!=1),)}对${VAR}!=1的结果取反
  • &&或||  且与或,如  ${__jexl3(${VAR}==1 && ${name} != "heima",)}
  • > 或者>==   大于等于,如${__jexl3(${count}>=10,)}

4. 总结

在if逻辑控制器的Expression中不能直接填写条件表达式,需要借助函数将条件表达式计算为true/false,可以借助的函数有__jexl3和__groovy函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

慕城南风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值