一,逻辑控制器:
1)控制取样器的执行顺序(分支+循环)的组件
2)为了实现多样的业务逻辑
3)分支:if 控制器
循环:forEach 遍历(迭代)一组数据
规则:前缀_阿拉伯数字
迭代:索引-----左闭右开
while 设置 循环次数
https://blog.csdn.net/cakushin7433/article/details/53151648
1)循环控制器:
请求必须在循环控制器下面
如果在线程组里也有循环数字,执行他们两个相乘的次数
2)如果(if)控制器:
1)请求必须在控制器下面
2)判断条件
3).Interpret Condition as Variable Expression?:这个选项勾选了之后,
条件中,如果写“${a}" == "${b}”(及时变量a和变量b的值相等,也不会执行)。
这个地方,就必须要填写一个返回True的表达式,比如${JMeterThread.last_sample_ok},这样的表达式。
4)Evaluate for all children:假如这个控制器下面,有3个HTTP请求。
如果需要在执行每个HTTP请求前,进行判断是否满足控制器中的条件,则需要勾选该复选框。
3)ForEach 控制器:
需求:有一组关键字(N1,N2,N3)要依次取出,并在百度搜索
用户定义的变量必须是N_数字的格式
配置控制器(红色箭头由上往下数做注释)
1)自己(。・∀・)ノ゙嗨的上面的名字,不要_和数字
2)左闭右开(在用户定义的变量中,我们是按照1,2,3这样的顺序下去的,但是计算机解析是从0开始的,
然后我们在逻辑控制器中这个左闭右开,右边那个4是取不到的,输出值是有name_4的原因是因为计算机从0对应name_1开始算)
这样我们左取0对应上面的name_1,1对应name_2这样下去
3)提取完上面这两数字区间内的数据后再自(。・∀・)ノ゙嗨一个名字
请求的执行格式
1)前面(。・∀・)ノ゙嗨
2)调用定义后的名字方法
3)这两个调用都可以