前言
一、线程组解析
1、含义
2、案例
3、各类线程执行顺序
二、报告解析
1、常用的压测报告
2、View Results Tree 介绍
3、Aggregate Report 聚合报告 介绍
前言
本章主要针对压测时常用的 线程组、压测报告 进行简单的整理分析。
一、线程组解析
1、含义
是性能测试的资源调度池,主要用于控制性能测试时的 运行调度、并发数、执行策略。包含:setUp Thread Group、Thread Group、tearDown Thread Group。
2、案例
例如:每秒请求100次场景(线程组配置可以是:500次,5秒 内)
stp1:本地简单启动一个静态web页面,打开 Windows 命令窗口 / Mac 终端,输入命令
python -m http.server 80
启动后,如下图
stp2:jmeter配置,新增测试计划->配置场景
① 新增测试计划及线程组
② 新增取样器并配置请求地址
③ Thread Group 场景配置
3、各类线程执行顺序
stp1:在上述基础上添加 setUp Thread Group、tearDown Thread Group,并分别添加HTTP取样器
stp2:添加查看结果树
stp3:执行测试计划,观察结果树
关注执行顺序:执行时, setUp Thread Group 会优先执行, tearDown Thread Group 会最后执行
二、报告解析
1、常用的压测报告
View Results Tree:将请求返回结果显示在当前界面
Aggregate Report:聚合报告,显示当前请求的响应时间、tps、传输数据大小,百分比等
Backend Listener:后端监听,想要显示的内容转存到数据库,通过图形化展示工具读取进行展示
2、View Results Tree 介绍
主要常用功能(可通过以下方式提取后,进行断言判断)
- 正则表达式测试:RegExp Tester
- CSS选择器测试
- XPath 测试:XPath Tester(Use Tidy)
- JSON Tester
ps:报告查看时,默认为 Text 模式,下拉可选择想要使用的模式
① “正则表达式 RegExp Tester” 进行结果的查看,案例:正则表达式 "queryid":.*?.
② “XPath Tester” 进行结果的查看,案例:表达式 .queryid
3、Aggregate Report 聚合报告 介绍
添加聚合报告
执行计划后,查看报告如下
报告内各指标含义
Label:采样器的名称
Samples:样本,一个线程请求一次
Average:平均值,所有请求的平均响应时间
Median:中位数,50% 的用户请求响应时间不高于这个数字
99% Line:99% 的用户请求响应时间不高于这个数字
Error %:异常百分比,请求错误时显示( 异常请求的数量/请求的总数 )
Through:吞吐量,服务器事务处理能力,默认情况下每秒完成的请求数
单位是s,平均值单位 毫秒,吞吐量计算公式 = 1000/Average*线程数
Received KB / sec:接受的数量
Sent KB / sec:发送的数量