在线程组中添加延迟 - JMeter

Adding a delay in a thread group - JMeter

这听起来像是一个重复的问题,但确实如此,在将其放在这里之前我已经搜索了很多。

我有一个包含 10 个用户和 28 个 HTTP 请求的线程组,我想要的是这样的:

Thread 1 --->rqst 1 
Thread 1 --->rqst 2 
Thread 1 --->rqst 3 
. 
. 
Thread 2 --->rqst 1 
Thread 2 --->rqst 2 
Thread 2 --->rqst 3 
. 
. 
Thread n --->rqst n 

延迟一分钟 重新开始。

我尝试在线程组中使用常量计时器,但我得到的是每次所有线程都执行一个请求。

谁能解释一下这是如何实现的。

在最后一个请求之后添加一个 beanshell 计时器,类似这样

if (${__threadNum} == 10){
    Integer WaitTime = Integer.parseInt(vars.get("WaitTime"));
    return WaitTime;
}

如果最后一个线程已启动,则从 var WaitTime 添加一个以毫秒为单位的睡眠。

或者在 jp@gc - Stepping Thread Group plugin 循环。

至少有2个选项:

  1. 在所有请求后添加Test Action Sampler并配置如下:

    • 目标:All Threads
    • 操作:Pause
    • 时长:60000
  2. 添加常量计时器 作为 rqst 1 的子项。计时器在 before 采样器之前执行,因此只有一个请求会受到影响。有关计时器范围的更多详细信息以及每个计时器的详细说明,请参阅 A Comprehensive Guide to Using JMeter Timers

在这两种情况下延迟不会包含在测试结果中