性能测试|JMeter 逻辑控制器(六)
Jmeter 逻辑控制器 之 While Controller
while controller 用于控制采样器循环执行,直到条件为 false 时,退出循环
认识 While Controller
保留项目,认识 while controller,我们就先创建一个 while controller 如下图,创建一个 While Controller (While 循环控制器)

设置界面如下:

Condition (function or variable) :条件(函数或变量)。条件为 Flase 的时候,才会跳出 While 循环,否则一直执行 While 控制器下的样例。
3 种条件:
不填(空):当 While 控制器下最后一个样例执行失败后 跳出循环
LAST :当 While 控制器下最后一个样例执行失败后 跳出循环,如果 While 控制器 前一个样例执行失败,则不会进入 While 循环,也就是不会执行 While 控制器下的样例。
自定义条件:值为 True 或 False 的函数/变量/属性 表达式
不填 (空)
首先,新增一个 While 控制器,在其下面添加 3 个样例,如下:

然后 设置最后一个样例执行失败:(一定是最后一个样例哦)

执行后,发现 循环只跑了一遍就退出了。

LAST
还是上面的设置不变,在 While 控制器中的条件输入框中输入:LAST

执行结果后,发现循环只跑一遍,与不填 的结果是一样的
但是输入 LAST 的时候,还会出现一个结果,那就是:如果 While 控制器 的前一个样例执行失败,则不会进入 While 控制器
如下:在 While 控制器 前面 添加两个样例,使样例 2 执行失败。

执行结果发现,样例 1、样例 2 执行了,但没有进入 While 控制器:

自定义条件
自定义条件,类似前面分享的 if 控制器。比如:

评论