在 JMeter 中,线程组(Thread Group) 是测试计划的核心组件,用于模拟虚拟用户行为。其参数设置直接影响负载生成的方式和测试效果。

主要线程组参数说明
- 线程数(Number of Threads)
模拟的虚拟用户数量,每个线程代表一个独立用户。
- Ramp-Up Period(秒)
启动所有线程所需的时间(单位:秒)。
例如:线程数=100,Ramp-Up=50 → 每 0.5 秒启动一个线程。
若设为 0,则所有线程立即启动。
- 循环次数(Loop Count)
每个线程执行测试计划的次数。
可选"永远"(慎用,易导致资源耗尽),通常配合调度器使用。
- 调度器(Scheduler)
勾选后启用时间控制:
-
持续时间(Duration):测试总运行时间(秒)。
-
启动延迟(Startup Delay):点击"开始"后等待多久才启动线程。
-
延迟创建线程直到需要(Delay Thread Creation Until Needed)
线程在首次使用时才创建,而非测试开始时全部初始化,可节省资源。
-
Same user on each iteration
-
勾选:每次循环使用相同的会话(如保留 Cookie)。
-
不勾选:每次循环视为新用户(重新获取 Cookie)。
-
Action to be taken after a Sampler error
采样器出错后的处理方式:
-
继续(Continue)
-
启动下一循环(Start Next Loop)
-
停止线程(Stop Thread)
-
停止测试(Stop Test / Stop Test Now)
多线程组执行模式
- 并行执行(默认)
所有线程组同时启动,独立运行。适用于模拟多种用户行为同时发生。
注意:不要勾选测试计划属性中的 "Run Thread Groups consecutively"。
- 串行执行
线程组按顺序一个接一个执行。适用于有依赖关系的测试阶段(如先初始化再压测)。
操作:在测试计划中勾选 "Run Thread Groups consecutively"。

实用建议
-
避免使用"永远"循环,除非配合调度器限制时间。
-
Ramp-Up 时间应合理设置,避免瞬间高并发导致服务器崩溃。
-
大并发测试建议使用命令行非 GUI 模式,避免界面卡顿 。
-
跨线程组传递参数(如 Token)需使用 `__setProperty()` 和 `__property()` 函数,因 JMeter 变量默认仅限当前线程 。
如需进一步了解参数化或插件扩展(如 Stepping Thread Group),可参考 。