jmeter-逻辑控制器之吞吐量控制器
一、引言
假设我们有个压测场景是10%的用户访问商品A,90%的用户访问商品B,如何使用jmeter来控制用户的访问比例呢?就需要使用到jmeter-逻辑控制器之吞吐量控制器
二、吞吐量控制器
线程组-添加-逻辑控制器-吞吐量控制器

吞吐量控制器是用来控制其下元件的执行次数,并无控制吞吐量的功能。
作用:控制其下的子节点的执行次数与负载比例分配,有两种方式:
- Total Executions:设置运行次数
- Percent Executions:设置运行比例(1~100之间)
- per user :Total Executions 配合运行次数
设置吞吐量百分比为10%

设置吞吐量百分比为90%

分别在2个吞吐量控制器下添加访问商品A和访问商品B的请求

三、查看结果
设置10个线程,循环2次,即20个请求

结果访问商品A 共2次,访问商品B 共18次

聚合报告

四、控制总的请求数
设置线程组10,循环10次,总共发100个请求
设置访问商品A执行10个请求,访问商品B执行90个请求
访问商品A

访问商品B

运行后查看聚合报告

如果勾选 Per User选项,这个是代表每个用户执行多少请求,前面设置的线程组是10,那么每个用户执行2个请求,就是总的20请求了
如下图所示:
勾选 Per User选项
设置线程数为10,(循环测试不设置)运行后自动会变为永远
访问商品A,设置吞吐量为2,商品B设置吞吐量为4,
及访问商品A共20次,访问商品B 40次


查看聚合报告:

若在上边的基础上把循环测试改为1次,结果会怎样呢?

结果:

循环测试改为3次

说明,如果设置了循环次数, 还要受循环次数条件限制,若循环次数小于吞吐量,则以循环次数为准, 若循环次数大于吞吐量, 则以吞吐量为准。
本文介绍了如何利用JMeter的吞吐量控制器来模拟不同比例的用户访问,例如10%的用户访问商品A,90%的用户访问商品B。吞吐量控制器可以通过设置TotalExecutions或PercentExecutions属性来控制子节点的执行次数,以此达到负载比例的分配。通过实例展示了在不同配置下,如线程数、循环次数变化时,请求的执行情况,并通过聚合报告验证了控制器的效果。
333

被折叠的 条评论
为什么被折叠?



