jmeter的使用笔记2
- 线程并发的设置
- 定时器
- 1)同步定时器
- 2)准确的吞吐量定时器
- 3)常数吞吐量定时器
- 用户自定义变量设置
- 响应断言
- 聚合报告查看
- 聚合报告参数详解:
前言:使用jmeter进行简单性能测试实践,以百度搜索为例
线程并发的设置
- 线程数:一个线程代表着一个用户;
- Ramp-Up Period (in seconds): 多长时间内初始化完这些线程(启动所有线程的时间);
- 循环次数:可以自定义所有线程循环几次,若勾选上永远,则表示不停止或者在设定的限定时间将会一直执行下去;
- 调度器:调度器时间和Ramp-Up Period (in seconds)时间是采取设置得时间最短得那个执行策略;
上图设置表示:1秒启动10个请求,持续1分钟循环发送;
定时器
1)同步定时器
作用:积攒启动的一定线程数后一次发出,模拟同步并发操作;
但是同步定时器仅能满足同步并发一定数量的线程;但不能满足如一秒需要发送多少请求的并发数,则需要使用如下准确的吞吐量定时器。
2)准确的吞吐量定时器
作用:使其按指定的吞吐量执行,以每分钟为单位。
3)常数吞吐量定时器
作用:
注意:准确的吞吐量定时器Precise Throughput Timer和常数吞吐量定时器Constant Throughput Timer功能类似,但是能更精准的控制请求。区别就是Constant Throughput Timer根据时间来做定时器(到了多少秒就发请求);Precise Throughput Timer是根据吞吐量在做计时器(到了多少量就发请求)。也就是能做到控制请求的速度和个数。
用户自定义变量设置
作用:可以定义一些常用变量,方便请求是参数写入、断言操作
响应断言
可添加断言结果:
聚合报告查看
1)当采用准确的吞吐量定时器:设置每秒3个并发线程,持续10S,根据线程组一秒启动时10个线程,持续循环10S的设置;
运行查看性能聚合报告:
2)当采用上文设置的常量吞吐定时器:设置一分钟60个样本量,一秒一个样本量,根据线程组一秒启动时10个线程,持续循环10S的设置;
则聚合报告如下:线程组一秒启动10个线程,则每秒吞吐量为10
3)采用同步定时器:设置模拟用户组的数量为10,延迟时间设置为0,根据线程组一秒启动时10个线程,持续循环10S的设置;
则聚合报告如下:
聚合报告参数详解:
- Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值
- #Samples:请求数——表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次(如上设置常量吞吐定时器),那么就显示100
- Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,以Transaction 为单位显示平均响应时间
- Median:中位数,也就是 50% 用户的响应时间
- 90% Line:90% 用户的响应时间
- Min:最小响应时间
- Max:最大响应时间
- Error%:错误率——错误请求数/请求总数
- Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction Controller 时,也可以表示类似 LoadRunner 的 Transaction per Second 数
- KB/Sec:每秒从服务器端接收到的数据量,相当于LoadRunner中的Throughput/Sec
性能测试中需要重点关注的数据有: #Samples 请求数,Average 平均响应时间,Min 最小响应时间,Max 最大响应时间,Error% 错误率及Throughput 吞吐量。