JMeter语言 - 循环计数时间



#Thread: 20, ramp: 10s, Loop Count: 1000

20线程将启动并运行10秒(2线程= 1秒间隔)。那么一旦20个线程完成,下一个循环再次开始20个线程在10秒内启动?下一个循环x1,在10秒内再次打开,关闭下一个循环x2, 20再次在10秒内打开,关闭…..下一个loopx1000,20在10秒内打开。

所以1000个循环,10秒x 1000 = 10,000秒/60 = 167分钟JMeter将完成但是我的节目完成了13分钟。

我猜20个线程,有些提前完成,所以这是否意味着在循环1中可能有7个线程仍在运行,但我们已经进入循环2启动完成的线程?这就是它提前完成的原因吗?

以下内容摘自Apache JMeter官方网站

Ramup-up时期

加速周期告诉JMeter需要多长时间才能"加速"。到所选线程的全部数目。如果使用了10个线程,并且上升周期为100秒,那么JMeter将花费100秒来启动并运行所有10个线程。每个线程将在前一个线程启动后10(100/10)秒启动。如果有30个线程,上升周期为120秒,那么每个连续的线程将延迟4秒。

在具有20个线程和10秒上升周期的场景中

tbody> <<tr>1245678
时间 线程数
02
4
6
38
10
12
14
16
18
920

不,不,不,不。

Thread: 20, ramp: 10s, Loop Count: 1000意味着:

  • JMeter将在10秒内启动20个线程,即每秒2个线程,10秒后所有20个线程将启动并运行
  • 一旦启动,每个线程将开始执行颠倒的采样器(或根据逻辑控制器)
  • 当没有更多的采样器执行线程开始下一次迭代,它将不会等待其他线程,除非你显式地告诉它使用同步定时器
  • 当没有更多的循环迭代线程被关闭
  • 当最后一个线程在最后一次迭代中执行最后一个Sampler时,测试结束

总测试持续时间取决于采样器的响应时间,您无法事先精确计算

最新更新