jmeter常用逻辑控制器的使用(如果(if)控制器)

jmeter很强大,他无所不及

今天,这篇文字着重讲述jmeter的一些常用的控制器,老规矩,不懂的,先赞后问,咱们开始吧

一, 如果(if)控制器

        1.1 大概意思

        从这个名称不难理解意思,这个控制器相当于代码中的“if”判断,如果,满足控制器里的条 件,ok,执行控制器下的一些请求等,同理,如果不满足条件,不执行。

        1.2 控制器如何添加

(鼠标右键)线程组--->(鼠标悬停)添加--->(鼠标悬停)逻辑控制器--->(左键点击)如果(if)控制器。 如下图所示:

        

        1.3 控制器参数详解

        如下图所示:

 
Expression (must evaluate to true or false):填写条件表达式,评估结果必须为真或假。
Interpret Condition as Variable Expression?:将条件解释为变量表达式?
意思是说:
如果不勾选此选项,则输⼊的条件表达式,将会使⽤JavaScript进⾏解析,得到需要的true/false结果。
如果勾选此选项:
1)输⼊的条件表达式,不会使⽤JavaScript进⾏解析,⽽是将条件视为JMeter的变量。
2)如果需要进⾏条件判断,则需要使⽤__jexl3或者__groovy函数,来⽣成函数表达式。通过函数表达式,得到需要的true/false结果。
Evaluate for all children?:条件作⽤于每个⼦项进⾏评估。
如果勾选该项,则该控制器在每⼀个⼦节点执⾏时前,执⾏⼀次。反之,只在开始前执行一次
 

        1.3 控制器如何使用

        控制器其他参数我们可以默认,参数解释上一段都可以文字详解,我这里就不多赘述了,这里我着重的讲述条件表达式如何填写。

        1.3.1首先,我们先来看下,不勾选 “Interpret Condition as Variable Expression?”如何填写表达式

        根据上一段的意思 ,我们能发现,当不勾选后我们的表达式可以输入的更加直接,如1==1,1<=2,1!=2等,这里会判断是否成立,表达式不成立,则表示为false,不执行,反之,则执行里面内容。同时,表达式还可以将变量带入进去,如  ${__Random(1,10,)}<5  ,当随机数随到小于5的数就执行处理器下方的请求内容。如下图所示:

  1.3.2其次 ,我们在来看下,勾选 “Interpret Condition as Variable Expression?”如何填写表达式

我们知道勾选的作用是:

        输⼊的条件表达式,不会使⽤JavaScript进⾏解析,⽽是将条件视为JMeter的变量。
        如果需要进⾏条件判断,则需要使⽤__jexl3或者__groovy函数,来⽣成函数表达式。通过函数

所以,这里就需要填入变量了啦,如   ${__jexl3(${abcd}==“3”,)}  这里表达式的意思就是 当变量  adcd==3时,则输出true,表示执行表达式下的请求,反之则不请求,不只是“==”还可以用 <,>,<=,>=。等等的一些比较符,同时,还有一种写法,这种写法就是在表达式里用__groovy,如${__groovy ("${abcd}"==“3”,)},这个函数对比__jexl3函数来说,区别就是在使用__groovy函数时变量得用英语引号给括起来,其他的都是一样的,效果也一样,比较符的使用也一样,没有啥差别,如何使用看自己怎么用习惯就好了。如下图所示:

下次讲其他的jmeter逻辑处理器,创作不易,路过的观众点点关注,这就是对我最大的鼓励

猜你喜欢

转载自blog.csdn.net/m0_58002043/article/details/125159107