jmeter吞吐量控制器
一、吞吐量控制器作用:旨在混合场景中,控制样本数,通常在比例场景中使用
吞吐量控制器提供了两种控制模式:
- 百分比执行(Percent Executions):
吞吐量控制器会根据配置的百分比来决定其下的作用域执行次数
例如,如果设置为20%,该控制器作用域下的请求只被执行所有并发(线程组)总次数的20%
例如,并发10,则10×20%=2,样本数只执行2次 - 总执行(Total Executions):
这种模式允许你直接指定控制器下元件的总执行次数,无论测试运行多久,达到设定的执行次数后,该控制器下的采样器将不再执行
例如:并发为10,吞吐量设置为2,则执行次数只执行2次,如果大于设定的并发数,则执行全部 - 百分比执行并且勾选Per User,吞吐量不设置& 总执行并且勾选Per User,吞吐量不设置:
并发数量等于总线程的并发数
二、案例
一、第一种方法
- A请求线程数10,添加吞吐量控制器,默认百分比执行,设置吞吐量20%
- B请求线程数10,添加吞吐量控制器,默认百分比执行,设置吞吐量30%
- 执行结果如下,A请求2个并发,B请求3个并发(和上面预期结果一致)
二、第二种方法
-
A请求线程数10,添加吞吐量控制器,选择 总执行(Total Executions),设置吞吐量2
-
B请求线程数10,添加吞吐量控制器,选择 总执行(Total Executions),设置吞吐量3
-
执行结果如下,A请求2个并发,B请求3个并发(和上面预期结果一致)
-
如果A请求和B请求设定得并发数大于并发设置的10,则最大样本数为10,结果如下
三、第三种方法:勾选Per User,当百分比执行勾选勾选Per User,结果如下
执行结果如下,A请求10个并发(按照线程设置的最大并发),B请求不支持组合使用,设置2,所以还是有2个并发