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

JMeter Stepping Thread Group问题求助:请求重复发送、并发用户超预期

解决JMeter Stepping Thread Group请求重复发送&用户数超限问题

嘿,我来帮你梳理下这个问题的常见原因和解决办法,应该能帮你搞定~

核心问题分析

你遇到的请求重复发送、用户数超过10的情况,大概率是CSV配置和线程组参数的配合出了问题,尤其是这几个点容易踩坑:

  • CSV文件的读取规则没设置对,导致线程重复读取账号
  • Stepping Thread Group的并发控制参数配置有误
  • 线程组的循环逻辑没限制住

具体排查&解决步骤

1. 检查CSV Data Set Config的关键设置

这是最容易出问题的地方,一定要按以下配置调整:

  • 取消勾选“循环读取”:如果勾选了这个,当线程读完CSV所有行后会从头再读,导致重复发送登录请求
  • 勾选“遇到文件结束符停止线程”:这样当CSV里的100个账号被读完后,对应的线程会自动停止,不会继续循环
  • 共享模式设置为“所有线程”:让所有线程共享同一个CSV读取指针,避免不同线程读取到同一行账号(如果设置成“每个线程”,每个线程都会从头读CSV,会大量重复账号)

2. 确认Stepping Thread Group的参数配置

既然你要实现10个并发用户的测试,参考以下标准配置(根据你的测试需求微调):

  • Initial Delay, sec:0(不需要等待,直接启动)
  • Start Threads Count:0(初始线程数为0,从逐步递增开始)
  • Initial Ramp-Up, sec:0(如果要立刻拉起10个并发,设为0;如果要慢慢加,比如5秒内拉满,就设为5)
  • Hold Load For, sec:填你想要的测试持续时间(比如60秒,让10个并发保持60秒)
  • Step Threads Count:10(每次递增10个线程,直接拉满到目标并发)
  • Step Ramp-Up, sec:0(立刻完成线程递增)
  • Step Hold, sec:0(不需要在递增过程中保持,直接进入持续阶段)
  • Shutdown Threads Count:10(结束时一次性停止10个线程)
  • Shutdown Ramp-Up, sec:0(立刻停止所有线程)
  • 另外,不要勾选“永远”,循环次数设为1(如果要每个用户只执行一次登录,就设1;如果要循环执行业务操作,再根据需求调整)

3. 验证配置是否生效

调整完后,添加这两个监听器来验证:

  • View Results Tree:查看每个登录请求的账号参数,确认没有重复的账号被使用,且并发数稳定在10
  • Summary Report:统计请求总数,确认符合你的预期(比如10并发持续60秒,每个线程每秒执行1次的话,请求数应该是600左右,具体看你的请求逻辑)

关于后续场景的补充建议

你提到还希望执行其他场景,比如登录后执行业务操作,这里给你个小建议:

  • 在Stepping Thread Group下,按顺序添加登录请求、业务请求(比如查询、提交等)、退出请求
  • 如果需要每个用户独立完成一套业务流程,确保CSV的账号每个线程只读取一次,配合“遇到文件结束符停止线程”的设置,就能保证每个用户只执行一次完整流程

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:34:11