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

JMeter中如何并发运行多个setUp线程组?

实现多个SetUp线程组并发执行的方法

默认情况下,JMeter的SetUp线程组是按定义顺序串行执行的——一个执行完毕后才会启动下一个。要让你的两个SetUp线程组并发运行,按以下步骤操作:

1. 修改测试计划的全局执行设置

打开测试计划的配置面板,找到Run Thread Groups Concurrently选项并勾选。这个设置会让测试计划内所有线程组(包括SetUp类型)同时启动,实现并发执行。

2. 分别配置两个SetUp线程组

  • 第一个初始化用的SetUp线程组:
    • 设置线程数为1,循环次数为1
    • 把所有初始化操作的取样器、配置元件放在这个组内
  • 第二个循环读文件的SetUp线程组:
    • 线程数设为1(如果需要多线程读文件可调整)
    • 循环次数设置为你需要的读取次数
    • 添加文件读取组件(比如CSV Data Set Config)和对应的业务逻辑取样器

3. 可选:控制后续普通线程组的执行时机

如果你的测试计划里还有普通线程组,需要等两个SetUp线程组都完成后再启动,可以这么做:

  • 在每个SetUp线程组的最后添加一个BeanShell Sampler,设置全局变量标记完成状态:
    props.put("setup1_done", "true");
    
    props.put("setup2_done", "true");
    
  • 在普通线程组开头添加While Controller,条件设为:
    ${__jexl3(props.get("setup1_done") != "true" || props.get("setup2_done") != "true",)}
    
    这样普通线程组会等待两个SetUp都完成后才开始执行。

注意事项

  • 确保两个SetUp线程组的操作完全无依赖,否则并发可能导致数据不一致或初始化失败
  • 勾选Run Thread Groups Concurrently后,所有线程组都会并行,包括普通线程组,若不需要普通线程组并行,必须通过上述方法控制执行顺序

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 15:32:36