Jmeter学习四Jmeter逻辑控制器

思考:参考前几篇文章中的内容,假设我们需要有100个相同的请求要怎么做?需要复制粘贴100个相同的请求吗?如果其中一部分请求需要做其他处理该怎么办?
这个时候就需要Jmeter中的逻辑控制器登场了!
逻辑控制器有很多,简单介绍几种
1-Simple Controller
在这里插入图片描述
仅仅提供采样器的存储,捆绑多个相同的采样器,然后在添加其他的组件如HTTP Default!
在这里插入图片描述
2-Loop Controller
在这里插入图片描述
一般不选永远,可以制定次数也可以把次数进行参数化。如先定义变量count值为5
这里就可以写成${count}。
3-Once Only Controller
在Once Only Controller下面,一个线程只执行一次,如:整个计划执行多次,Once Only Controller下面的采样器也仅仅执行第一次执行。
思考1:这个仅执行一次有什么用?
解答:如登录接口,先登录然后再执行,登录接口就可以放在里面。
思考2:Once Only Controller放在Loop Controller下面,Loop Controller执行三次,测试计划执行一次,Once Only Controller如何执行?
思考2的结果是Once Only Controller也是只执行1次。
思考3:Once Only Controller放在Loop Controller下面,Loop Controller执行一次,但是整个测试计划执行多次,Once Only Controller如何执行?
Once Only Controller控制感觉失效了,Once Only Controller的执行次数与测试计划次数相同。
思考4:Once Only Controller放在线程组下面,测试计划执行多次,Once Only Controller如何执行?
Once Only Controller只执行一次
所以,不要反复的去嵌套多个Controller。

顺便说下几个线程组的执行顺序
setUp Thread Group 会先于其他线程组执行。一般进行数据读取,文件加载。
tearDown Thread Group会后于其他线程组执行。
这两个其实可以不用

4-ForEach Controller
ForEach Controller一般和用户自定义变量联合使用
在ForEach Controller设置输入变量前缀输出变量名称,执行的时候第一次就会去找包含变量前缀的变量,依次往下查询,在结果树中可以看到输出的变量名称为设置的输出变量名称
如果自定义的变量不安顺序,则可能找不到,如用户自定义变量有三个,分别是name_1,name_2,name_3,则可以运行成功,如果是name_4,name_2,name_3,则不会运行,如果是name_1,name_2,name_4,则只会运行两次。变量名称要完全匹配。最后生成的变量是可以被引用的。
这里强调一点用户自定义变量组件的作用域的问题,不管挂到哪里其他组件只要取变量名正确,就都可以取的到。

5-Transaction Controller(事务控制器)
最简单的功能,统计Transaction Controller下所有取样器的响应时间等,Load time表示取样器一共的响应时间,而且需要在所有取样器都成功的情况下才会成功,如果其中某个采样器失败了,那么Transaction Controller也会失败。
思考:如果额外加了定时器呐?这个定时器的相应时间会统计进去吗?
是不会计算在事务之内的(相当于Loadrunner里面的忽略思考时间)如果需要包含思考时间,则将“include during……”勾选上。这个时间的精细度依赖操作系统了。

6-If Controller
条件里面是JS语言的如:‘ab’ =='ab’或者true 注意是单引号!如果满足判断条件,则进入该控制器中的采样器。
interpret condition as variable expression如果勾选,则条件里面的内容则做为参数来判断,如使用变量的时候。
evaluate for all children如果勾选,判断条件扩大至所有的children,每一个If Controller下的采样器每次都需要判断,就不是开始判断一次,下面畅通无阻。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值