我是Jmeter的新手并且对这4个设置感到困惑:
调度程序中的持续时间
Thread Group 1: # of threads:1, ramp up period:0, loop count:5, no scheduler
Thread Group 2: # of threads:5, ramp up period:0, loop count:1, no scheduler
Thread Group 3: # of threads:1, ramp up period:1s, loop count:5, no scheduler
Thread Group 4: # of threads:5, ramp up period:5s, loop count:1, no scheduler
Thread Group 5: # of threads:1, ramp up period:1s, loop count:forever, duration in scheduler:5s
Thread Group 6: # of threads:5, ramp up period:5s, loop count:forever, duration in scheduler:5s
Run Code Online (Sandbox Code Playgroud)
我对这些群体之间的差异感到困惑,希望有人可以帮助我.非常感谢提前!
小智 9
首先,每个参数的简短定义:
线程数:模拟用户数
加速周期:Jmeter启动所有线程所需的时间
循环计数:每个线程执行测试用例的次数
调度程序中的持续时间:运行测试的持续时间.在这种情况下,应忽略结束时间字段中的值,并从起始时间和持续时间计算相对结束时间.
这里需要了解的重要一点是,Ramp-up周期与Loop计数无关.它只与线程数有关.如果有10个线程并且加速时间为100秒,则每个线程将在上一个线程启动后10秒开始,总时间为100秒以启动线程组中的所有线程.
现在回答每个Thread Group案例:
Thread Group 1: # of threads:1, ramp up period:0, loop count:5, no scheduler
Thread Group 2: # of threads:5, ramp up period:0, loop count:1, no scheduler
Thread Group 3: # of threads:1, ramp up period:1s, loop count:5, no scheduler
Thread Group 4: # of threads:5, ramp up period:5s, loop count:1, no scheduler
Thread Group 5: # of threads:1, ramp up period:1s, loop count:forever, duration in scheduler:5s
Thread Group 6: # of threads:5, ramp up period:5s, loop count:forever, duration in scheduler:5s
Run Code Online (Sandbox Code Playgroud)
Q1.线程组1和2之间有什么区别吗?
线程组1有一个线程,它将重复相同的测试5次,即当一个测试完成重复测试,直到达到5的循环计数
线程组2有5个线程,当Ramp-up Period为0时将同时启动,所以它应该在系统上同时模拟5个用户
Q2.每个循环之间的时间上限有多长?
时间上限是上升周期的一个因素,它在线程组中的线程数之间平均分配.循环是一个连续的过程,一直持续到达到循环计数."时间上限"不是JMeter文档中使用的术语,但假设您的意思,如果您需要细粒度控制,可以使用" 测试操作"或其他JMeter机制在循环之间进行设置.
Q3.线程组3,4,5和6之间有什么区别吗?
是的,所有参数都不同,因此如上所述,行为是不同的.
Q4.3组,4组,5组和6组是否需要5秒才能完成发送所有请求?每组的结果总数应该是5吗?
不,这对每种情况都是主观的.在线程组3中,单个线程应执行相同的线程5次,因此无法随时控制
在线程组4中,有5个线程,并且基于加速周期,每个线程应该在另一个之后1秒开始,因此完成测试至少需要4-5秒(在最后一次测试之后)
线程组5和6每个只运行一段时间,持续5秒.如果在此之前完成测试则罚款,否则测试应终止并停止
Q5.当我尝试线程组5时,我得到了大约83个响应,为什么不只有5个响应?这是否意味着加速期不起作用?
为什么只有5个回复?线程组5应创建一个线程,该线程将永远执行测试.如果未定义持续时间,则测试将在无限循环中运行.由于定义了持续时间,因此测试只能持续一段时间.
全部注释:循环计数是特定于线程的.它指定了每个线程应重复测试的次数.加速期与#Thread(用户)有关,与循环计数无关
读:
| 归档时间: |
|
| 查看次数: |
13448 次 |
| 最近记录: |