用jmeter压测接口,并生成压测报告
安装jmeter并配置环境
1、首先电脑要配置java环境(这里就不说了,去官网下载个jdk,最好8以上,然后配置一下环境变量,在终端输入java -version ,如果显示了jdk版本就配好了),原因:jmeter需要在java环境上运行
2、官网下载jmeter压缩包,一般下载以.zip结尾的,下载后解压到本地,然后进入bin目录,把bin目录的地址也加到环境变量path中,在bin目录下有个jmeter.bat的文件双击就可以打开了
QPS压测步骤
一、在 JMeter 中配置压测
1.创建测试计划
打开 JMeter,在 “测试计划” 上右键点击,选择 “添加” - “Threads(Users)” - “线程组” 。在 “线程组” 中设置线程数(模拟用户数)、Ramp - Up Period(启动时间,单位秒,即多长时间内启动完所有线程)、循环次数等参数。例如,线程数设为 100,Ramp - Up Period 设为 1,循环次数设为 10 ,表示 1 秒内启动 100 个线程,持续120秒,如图所示
- 添加 HTTP 请求
在 “线程组” 上右键点击,选择 “添加” - “Sampler” - “HTTP 请求” 。- 协议:根据实际情况填写,如
http
。 - 服务器名称或 IP:填写
localhost
(如果是本地运行) 。 - 端口:填写
port
。 - 路径:填写
/api/****(自己的接口)
。 - 方法:选择
POST/GET/...
。 - 配置请求体(Body):如果是json就在消息体数据中添加json数据,如果是param或者form表单就在参数中添加,如果有文件就在文件上传添加,记得勾选参数类型
- 协议:根据实际情况填写,如
- 配置请求头(Headers)
在 “HTTP 请求” 下右键点击,选择 “添加” - “配置元件” - “HTTP 信息头管理器” 。在 “HTTP 信息头管理器” 中添加 Postman 中Headers
里的参数,如Content-Type:application/json ,token:***** 等。
二、添加监听器查看结果
- 添加聚合报告
在 “线程组” 上右键点击,选择 “添加” - “监听器” - “聚合报告” 。运行测试后,聚合报告可实时显示请求的平均响应时间、中位数、90% 百分位响应时间、吞吐量等数据。 - 添加图形结果
同样在 “线程组” 上右键点击,选择 “添加” - “监听器” - “图形结果” 。它能以图形化方式展示响应时间等数据变化情况。 - 添加汇总报告
同样在 “线程组” 上右键点击,选择 “添加” - “监听器” - “汇总报告” 。 - 添加查看结果树
同样在 “线程组” 上右键点击,选择 “添加” - “监听器” - “查看结果树” 。它能以请求的方式展示接口是否响应成功。
三、生成 HTML 压测报告
- 运行测试并保存结果
点击 JMeter 工具栏上的 “启动” 按钮运行测试。测试结束后,点击 “保存” 按钮,将测试结果保存为.jtl
格式文件(如result.jtl
)。如果保存的是jmx文件则需要在终端输入一行这个代码把你保存的文件转成.jtl文件
jmeter -n -t yourname.jmx -l result.jtl
- 生成 HTML 报告
打开命令行窗口,进入 JMeter 安装目录下的bin
文件夹。执行命令如下,执行完后会生成一个report文件夹,文件夹中有一个index.html就是报告,示例如下
jmeter -g result.jtl -o report