首页 文章

在JMeter中按顺序运行多个线程组

提问于
浏览
31

我有一个测试计划,其中有多个线程组 .
我想按顺序运行所有线程组 .
线程组如下:

Thread Group1
Thread Group2
Thread Group3
. . .
Thread GroupN

我在互联网上阅读了不同的博客和文章,人们声称线程组将按照定义的顺序运行,但显然它们不在我的情况下 . 线程组4在线程组1之前运行 . 线程Group4正在生成一个错误的报告,因为它在Thread Group1之前运行 .

如何确保线程组的排序?


另外,我需要实现以下场景:

  • 由单个用户多次运行单个请求(单个用户应从单个HTTP请求创建1000个帐户) .

  • 多个用户同时多次运行多个请求(多个用户应同时从单个HTTP请求创建1000个帐户) .

怎么办?

PS:请在回复之前仔细阅读并理解查询 .

4 回答

  • 0

    关于在测试计划中连续执行线程组:在Test Plan configuration screen上简单检查 Run Test Group consecutively 复选框:

    enter image description here


    Thread Group
    Number of Threads = 1
    Loop Count = 1
      ...
      Loop Controller
      Loop Count = N
          HTTP Request
      ...
    

    甚至没有Loop Controller的架构,但不是那么灵活:

    Thread Group
    Number of Threads = 1
    Loop Count = N
      ...
      HTTP Request
      ...
    
    • 将标准线程组的 Number of Threads 属性与 Ramp-Up Period 属性一起使用:
    Thread Group
    Number of Threads = N
    Ramp-Up Period = 0
    Loop Count = 1
      ...
      HTTP Request
      ...
    

    这将启动N个并发线程执行相同的场景 .

  • 0

    Test Plan 中连续检查运行线程组(即一次运行一个组) .

  • 6

    关于Alies Belik的回答,还有另一种方法,就是连续运行线程组

    这是第一部分使用Setup Thread Group .

    关于设置加速周期,最好设置一个> 0的值,

    这取决于线程数,这是更现实的

    启动它可能会延迟启动,你拥有的越多,启动时间就越多 .

  • 65
    • 只需在测试计划中添加更多线程组即可 .

    • 在测试计划 properties -> tick Run Test Group 中连续执行线程组 .

相关问题