Jmeter线程组使用详解

以下罗列的是Jmeter 所有线程组的详解,包括官方自带的线程组,和官方插件的线程组。官方线程组安装,详见之前的文章:
https://blog.csdn.net/qq_36873975/article/details/103802114
本文详细介绍了 官方插件的持续加压线程组的使用。
jmeter阶梯加压详解。jmeter阶梯加压实战。
1.

官方插件 阶梯加压线程组1—bzm - Arrivals Thread Group

主要功能:阶梯控制 每秒/每分钟 请求数,若加事物控制器时,则是每秒执行事物数,若有两个,就是两个分别的。

位置:
Jmeter线程组使用详解_第1张图片Jmeter线程组使用详解_第2张图片
界面功能:

Target Rate (arrivals/min) : 目标 每秒OR每分钟 请求数。

Ramp UP Time(min) : 在多少秒内到达目标请求数。

Ramp-Up Steps Count : 请求步率:在多少秒内到达目标每秒请求数。

Hold Target Rate Time(min) : 到达目标请求数之后,持续运行多长时间。

Time Unit:minutes seconds : 设置是按照秒还是分钟来计数。

Thread iterations Limit : 线程循环次数。

Log Threads Status into File : 保存线程状态至文件。

Concurrency Limit : 最大线程组数限制

接下来找个网站测试一下,看下实际的使用结果
需求:
目标每秒请求次数 :100
多少秒内达到 100/s : 10秒
步率 : 10
到达并发后持续多少秒:30
线程组配置:
Jmeter线程组使用详解_第3张图片
测试结果如下:
Jmeter线程组使用详解_第4张图片2.官方插件 阶梯加压线程组2—bzm - Concurrency Thread Group

主要功能:阶梯控制线程数并发

位置:

Jmeter线程组使用详解_第5张图片界面:
Jmeter线程组使用详解_第6张图片 界面功能:

Target Concurrency : 目标并发线程数

Ramp Up Time(min) : 在多少时间内启动至目标并发线程数

Ramp-Up Steps Count : 启动之后到达目标并发线程数的 阶梯数

Hold Target Rate Time(min) : 达到目标线程并发数之后,持续运行多长时间

Time Unit:minutes seconds : 设置是按照秒还是分钟来计数。

Thread lterations Limit : 线程迭代次数

Log Threads Status into File : 将线程状态记录到文件

实战:

接下来找个网站测试一下,看下实际的使用结果
需求:
目标用户并发 :100
多少秒内达到 : 10秒
步率 : 10
到达并发后持续多少秒:60

线程组配置:
Jmeter线程组使用详解_第7张图片结果如下:
Jmeter线程组使用详解_第8张图片3.官方插件

阶梯加压线程组3—bzm - Free-Form Arrivals Thread Group

主要功能:与bzm - Arrivals Thread Group类似,不同的是通过设置起始值、终止值、持续时间来满足测试场景,并且可以设置多个线程的集合。

位置:
Jmeter线程组使用详解_第9张图片界面:
Jmeter线程组使用详解_第10张图片Start Value : 起始每秒请求次数。

End Value : 达到多少每秒请求次数时停止。

Duration : 从起始每秒请求次数 至 达到多少每秒请求次数时停止(相当于持续时间)。

Tine Unit:minutes seconds :设置按照秒还是分钟计时。

Thread lterations Limit : 线程迭代次数限制。

Log Threads Status into File : 将线程状态记录到日志。

Concurrency Limit : 最大线程数量限制

实战:

接下来找个网站测试一下,看下实际的使用结果
需求:
第一波
起始每秒请求次数 :10
达到多少每秒请求次数时停止 : 100
持续时间 : 60
第二波
起始每秒请求次数 :10
达到多少每秒请求次数时停止 : 60
持续时间 : 60

线程组配置及测试结果:
Jmeter线程组使用详解_第11张图片Jmeter线程组使用详解_第12张图片4. 阶梯加压线程组4—jp@gc - Ultimate Thread Group

功能:可以通过不断加载负载,用于检验不同负载下,服务器的性能如:TPS,RT等,可以测试出较好的节点

位置:
Jmeter线程组使用详解_第13张图片界面:
Jmeter线程组使用详解_第14张图片Start Threads Count : 线程总数量

Initial Delay,sec : 延迟多长时间开始初始化

Startup Time,sec : 线程在多少秒内启动这个总线程数

Hold Load For,sec : 线程持续运行多长时间

Shutdown Time : 持续运行后多长时间后,在多少秒内停止运行

假如增加多个,是重合的。例如一个为80线程,另外一个也是80线程,那么跑的时候重合之后 就是160个线程在运行,可以通过延期启动去分开。

实战:

接下来找个网站测试一下,看下实际的使用结果
需求:
第一波
起始线程组数量 :100
延迟多长时间开始初始化:0
线程加载时间:30
线程持续运行时间 : 60
第二波
起始线程组数量 :80
延迟多长时间开始初始化:20
线程加载时间:300
线程持续运行时间 : 600

线程组配置:
Jmeter线程组使用详解_第15张图片结果:
Jmeter线程组使用详解_第16张图片5.

阶梯加压线程组jp@gc - Stepping Thread Group (deprecated)

功能:自定义加压线程组,发布时间较久的线程组

位置:
Jmeter线程组使用详解_第17张图片界面:
Jmeter线程组使用详解_第18张图片

This group will start **** threads :线程组启动总数

First,wait for **** seconds :启动第一个线程组时,等待多少秒

Then start **** threads :起始启动多少线程组

Next,add X ,

threads veery Y seconds,

using ramp - up Z seconds.

以上三个为:每隔Y秒,在Z秒内,启动 X个线程
也可理解为在Z秒内增加X个线程,持续Y秒
Then hold load for **** seconds :启动线程总数到达最大值后再持续运行多少秒

Finally,stop K

threads every L seconds,

每L秒,停止K个线程

接下来找个网站测试一下,看下实际的使用结果
需求:

线程启动总数 100
等待0秒
起始启动0个线程组
每隔30秒,在5秒内,启动10个线程 / 5秒内增加10个线程持续30秒
达到最大值运行60秒
达到最大值后,每L秒,停止K个线程

线程组配置:
Jmeter线程组使用详解_第19张图片结果:
Jmeter线程组使用详解_第20张图片

你可能感兴趣的:(jmeter,压力测试,测试工程师,软件测试,jmeter)