如何在整个测试运行期间统一分配JMeter线程

时间:2018-05-02 13:10:59

标签: jmeter

我有以下

enter image description here

但是当我使用60个线程运行时,我不会看到线程每秒被触发。相反,似乎交易控制器中的请求以每分钟60个请求的速率被触发。

有没有办法让JMeter以每分钟60的速度创建线程而不限制请求?

2 个答案:

答案 0 :(得分:0)

在这种情况下,您需要使用Rampup持续时间。同样这是一次性活动,一旦创建了线程,它们将执行请求并在需要时死亡/重复。

Ultimate Threadgroup plugin在这里也很有帮助。

通常每个人都对服务器可以获得多少吞吐量(每单位时间的req)感兴趣。所以在你的情况下,它做正确的工作,即每秒发送60个请求。

实际上,每秒创建多个线程是不好的做法,IMO这样的测试没用(为什么需要它?),因为JMeter中的客户端线程并不重要,但是线程发送给服务器的请求(可以是1-10或100) )多次以及服务器如何响应都很重要。

如果您的用例不同,请详细分享,我们将进行讨论。希望这会有所帮助。

答案 1 :(得分:0)

如果你希望JMeter每秒启动一个线程,你需要指定 Ramp-Up Period 等于Thread Group下的线程数(虚拟用户),如果你想要60虚拟用户 - 持续60秒。

另外请确保你允许你的线程组永远循环 ,就好像你没有 - 你会遇到一些线程已经完成他们的工作但有些线程尚未启动的情况。

示例配置:

JMeter Thread Group Ramp-Up

示例输出:

JMeter Ramp-Up in Action

更多信息:JMeter Ramp-Up - The Ultimate Guide