如果(if)控制器

如果(if)控制器:判断控制器,根据填写的表达式的值(true或false),来决定控制器下的元件是否执行;true就执行,false就不执行;

 

Interpret Condition as Variable Expression?:将条件解释为变量表达式(勾选后需要使用 ${__jexl3 } 或 ${__groovy } 函数来计算表达式结果);

 

Evaluate for all children:条件作用于每个子项,如果选中这一项,在控制器下每个元件执行时,都需要判断一下;

 

 

举例一:表达式结果为true就执行,false就不执行;(如:1==1结果为true,1!=1结果为false)

条件填写true,结果:控制器下的请求运行了

 

 

 

条件填写false,结果:控制器下的请求没有运行

 

 

 

 举例二:根据上个请求的响应结果,判断是否执行;

如图:登录后提取变量role,在if控制器中填写表达式:${role}>1,进行判断,如果role大于1则执行,如果不大于1则不执行;

 

 

 

 

 

结果:登录的响应中role==8,大于1,所以控制器下的请求运行了;(同理:如果填写的表达式为false则不执行)

 

 举例三:勾选Interpret Condition as Variable Expression的例子;

勾选后不能直接填写表达式,需要借助函数对表达式进行计算,根据计算结果(true或false)判断是否执行;

如图:使用_groovy函数,将生成的函数字符串填写导表达式中运行;

结果:登录的响应中role==8,大于1,所以控制器下的请求运行了;

 

 

 

如图:使用_jexl3函数,将生成的函数字符串填写导表达式中运行;

 

结果:登录的响应中role==8,大于1,所以控制器下的请求运行了;

 

 

posted @ 2021-03-29 15:28  呆萌呆萌呆萌  阅读(325)  评论(0编辑  收藏  举报