如何在JMeter中延迟我的每个线程组(不使用启动延迟)

时间:2017-10-23 07:34:27

标签: jmeter performance-testing jmeter-3.2

这里我的测试计划中有4个线程组,我有一个要求,需要在我的每个线程组之间以30分钟的时间间隔运行测试计划(第二个线程组应该仅在30分钟后开始,之后完成第1个线程组等。)

enter image description here

但无法估计所有线程组的实际持续时间。对于我的所有线程组,我的Ramp-up周期应为0,是否有任何解决方案可以满足我的要求?

提前致谢

2 个答案:

答案 0 :(得分:2)

  1. Test Action Sampler添加到每个线程组的末尾
  2. 按如下方式配置:

    • 目标:Current Thread
    • 行动:Pause
    • 持续时间:1800000
  3. 添加Synchronizing Timer作为Test Action采样器的子级,并将Number of Simultaneous Users to Group by设置为等于当前线程组中的线程数
  4. 这样,测试动作采样​​器将充当"会合点"所以当前线程组中的所有线程都将休眠1800000毫秒(1800秒== 30分钟),这样您将在线程组之间延迟30分钟。

答案 1 :(得分:1)

添加到@Dmitri T回答,请在测试计划中确保取消选中 Run Thread Groups Consecutively,这样它就不会尝试并行执行

您可以在每个线程组中添加Critical Section Controller作为具有相同名称的所有其他组件的父级(默认为global_lock)

这样,在上一个线程结束之前,没有线程组会启动。

修改

在线程之间获取结果: 添加到每个线程组Generate Summary Results以获取每个线程的结果

  

生成到目前为止测试运行的摘要到日志文件和/或标准输出。