You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JMeter定时场景测试求助:无间隔发100个POST后5分钟发100个GET

解决JMeter同一线程组内批量POST后延迟再批量GET的问题

核心配置思路

要实现同一线程组内「一次性发100个POST → 等待5分钟 → 一次性发100个GET」的效果,关键是让100个线程在完成POST后同步等待,再同时触发GET。Constant Timer无法实现是因为它给单个请求加延迟,会导致GET请求陆续发送,而非批量触发。

方法一:Test Action Sampler + 线程组并发配置

  1. 线程组基础设置:
    • 「Number of Threads (users)」设为100
    • 「Loop Count」设为1
    • 「Ramp-Up Period」设为0(让100个线程瞬间启动,无间隔发送POST)
  2. 添加POST请求:
    • 配置好POST的接口地址、参数、请求头,不要给POST添加任何Timer,保证100个线程同时发送
  3. 添加Test Action Sampler:
    • 在POST请求后添加这个采样器,设置「Duration」为300000(单位是毫秒,对应5分钟)
    • 这个采样器会让每个线程暂停5分钟,由于所有线程同时进入等待,等待结束后会同步执行后续请求
  4. 添加GET请求:
    • 配置好GET的接口信息,无需额外设置,100个线程会在等待结束后一次性无间隔发送

方法二:JSR223 Sampler控制延迟

如果Test Action Sampler不符合需求,也可以用脚本实现延迟:

  1. 线程组和POST请求的配置和方法一完全一致
  2. 在POST请求后添加JSR223 Sampler,在脚本框中输入:
    Thread.sleep(300000);
    
    • 这段代码会让当前线程暂停5分钟,100个线程同步等待后,再同时触发GET请求
  3. 最后添加GET请求即可

注意事项

  • 确保线程组没有设置额外的延迟或调度器,避免影响并发效果
  • 如果POST请求需要参数化,保证参数配置不会导致线程间的依赖或等待
  • 若遇到线程不同步的情况,可以检查JMeter的线程隔离设置,确保每个线程的延迟逻辑独立执行

内容的提问来源于stack exchange,提问作者iamdinesh007

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 08:13:23