Jmeter压测实战之HTTP_POST

文章目录

  • 前言
  • [一、POST 接口压测](#一、POST 接口压测)
  • 总结

前言

对接口类型是POST,且请求格式类型是JSON 格式的数据进行压测,这也是在日常项目中常用的压测工作。


一、POST 接口压测

1.打开jmeter 后创建一个测试计划 这里举例子:账户充值接口

2.创建线程组
主要关注下 线程数 和 Ramp-up时间的设置:
线程数:相当于用户量,一个线程相当于一个用户
Ramp-up时间:(上升时间)指的是:从第一个线程启动到最后一个线程启动完成所花费的总时间(单位:秒)如:

例1:如果线程数 = 10,Ramp-Up = 5 秒
JMeter 会在 5 秒内逐步启动这 10 个线程。
每秒启动线程数 ≈ 10 / 5 = 2 个
每启动一个线程的间隔 ≈ 500 毫秒
例2:如果线程数 = 10,Ramp-Up = 0 秒
所有 10 个线程会在一瞬间同时启动。

3.创建HTTP请求(方式:右点击线程组->点击添加->取样器-> HTTP请求)
按照截图一次填写好请求信息和参数:在消息体数据传参写好(实际使用中传参都是动态变化的,后会使用csv文件导入)

如果需要在请求头补充一些参数如token等需要 右击 HTTP请求组件->(点击添加 -> 配置元件->HTTP信息头管理器)

这里步骤模拟实际用户使用下,动态传参数,并压测接口,而非单一指定参数去压测接口

3.1.准备一份CSV模版文件如

3.2.添加 【CSV数据文件设置】组件 也是在HTTP请求组件右击后 【添加】-> 【配置元件】 的组件中找到的

填写好相应的信息:
注意变量名称的填写和忽略首行

3.3.这里我们在 【HTTP请求】 组件的消息体数据就可以用变量替换
替换的时候,字符要保留"",原样替换如图:

4.上面的配置完成后就可以配置一些监控工具:

在右击【setUP线程组】后【添加】 【监听器】的组件中选择

5.组件设置完后,点击页面 绿色三角形 启动按钮便可以测试

接口响应时间图:

总结

通过 JMeter 压测接口后,汇总报告 (Summary Report) 和 聚合报告 (Aggregate Report) 的核心指标基本相同,只是展示粒度略有差异。重点关注以下 6 个关键指标:

指标名称 含义 判断标准
Samples (样本数) 发出的请求总数 确认压测是否按预期执行
Average (平均响应时间) 所有请求的平均耗时(ms) 越小越好,一般<200ms(互联网)
Error % (错误率) 失败请求占比 ≤1% (严格系统要0%)
Throughput (吞吐量) 每秒处理的请求数 (TPS/QPS) 越高越好,核心性能指标
90% Line (90分位值) 90%的请求在此时间内完成 比平均值更能反映多数用户体验
95% / 99% Line 95%/99%分位值 反映长尾请求性能
相关推荐
半壶清水1 小时前
windows环境下,bmv2虚拟交换机的部署与使用方法
网络·windows·python·网络协议
zjun10012 小时前
TCP专栏-3.三次握手
网络·网络协议·tcp/ip
liulilittle2 小时前
SA6400内核5.10编译TCP_BBR的具体方法整理
chrome·网络协议·tcp/ip
西西弟2 小时前
网络编程基础之TCP多线程并发服务器
服务器·网络·网络协议·tcp/ip
计算机安禾4 小时前
【计算机网络】第24篇:TCP性能瓶颈的定量诊断——重传类型、RTT波动与带宽时延积
网络协议·tcp/ip·计算机网络
bzmK1DTbd15 小时前
Servlet 4.0新特性:HTTP/2与异步处理支持
网络协议·http·servlet
近墨者缺黑16 小时前
关于Modbus RTU和TCP协议的一些简要笔记
网络协议
书源丶17 小时前
四十三、网络编程(下)——TCP 编程与 HTTP 入门
java·网络·tcp/ip·http