
正文
Jmeter系列(7)- 基础线程组Thread Group
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
如果你想从头学习Jmeter,可以看看这个系列的文章哦
https://www.cnblogs.com/poloyy/category/1746599.html
Thread Group基础线程组介绍
Thread Group的简单理解
- 线程组是一个测试计划的开始点
- 在一个测试计划中的所有元件都必须在某个线程组下
- 线程组决定Jmeter执行测试计划的 线程数
Thread Group提供的主要作用
- 设置线程数
- 设置ramp-up period
- 设置执行测试的次数
Thread Group的独立性
每个线程都会独立的运行测试计划,互不干扰,多个线程用于模仿对服务器的并发访问。
Thread Group线程属性讲解
在取样器错误后要执行的动作
默认:继续
建议:继续
假设一个HTTP Sampler报错了,后面还有其他请求,最好肯定是继续执行下去啦
线程属性值
设置的线程属性值是 【预期压力值】
而聚合报告是 【压力测试的实际结果】
线程数
-
Jmeter java进程下启动的线程,用来
模拟真实用户数
,1线程数 = 1用户数
-
windows下,java进程最多能启动1000个线程
-
Linux下,java进程最多能启动2000个线程
-
在Jmeter中,先加载线程,再跑测试任务,后释放线程
Ramp-Up时间(秒)
-
预期加载所有线程所需的总时间
-
ramp up=0时,表示瞬时加压,启动线程的时间无限趋近于0
-
特别注意:
在负载测试的时候,尽量
把ramp up设置大
一些,让性能曲线平缓,分析瓶颈点
循环次数
-
每个线程循环执行的次数,
默认一次【便于理解:线程的迭代次数、重复发起请求的次数】
-
如果设置为
永远
,那么jmeter将以最大的可能去发送请求,以此测试出
最大并发数
线程属性值的简单栗子
- 预期加载所有线程所需的总时间
- ramp up=0时,表示瞬时加压,启动线程的时间无限趋近于0
- 特别注意: 在负载测试的时候,尽量 把ramp up设置大 一些,让性能曲线平缓,分析瓶颈点
循环次数
-
每个线程循环执行的次数,
默认一次【便于理解:线程的迭代次数、重复发起请求的次数】
-
如果设置为
永远
,那么jmeter将以最大的可能去发送请求,以此测试出
最大并发数
线程属性值的简单栗子
上图: 2s内启动100个线程,并发送200个请求(100*2) 【从启动线程到运行线程一共2s】
备注: 如果2s内,200个请求不能全部运行完成,时间则会顺延下去
调度器Specify Thread Lifetime【 scheduler 】
调度器的作用: 控制每个线程组运行的持续时间以及它在多少秒后再启动
Duration (seconds) : 持续时间;线程组运行的持续时间
Startup Delay (seconds): 启动延迟;测试计划开始后,线程组的 线程 将在多少秒后 再启动运行
调度器和循环次数的关系
-
循环次数有
固定值
,持续时间
不会生效
,以循环次数为准
-
循环次数设置为
永远
,持续时间才
会生效
调度器注意事项
当线程组运行完持续时间后,会 逐步释放线程, 不会一下子把所有线程释放掉,而释放线程也是需要时间的~
所以测试计划总的时间(右上角的时间)会 > 持续时间+启动延迟








