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%分位值 反映长尾请求性能
相关推荐
虎王物联3 小时前
工业Modbus TCP协议深度实战:STM32 HAL库实现从机通信与数据上云
stm32·物联网·网络协议·tcp/ip·嵌入式
++==6 小时前
RESTful详解:核心思想、框架、与HTTP的区别,API的设计风格
后端·http·restful
楷哥爱开发7 小时前
TikTok Shop新加坡本土店入驻:如何选择新加坡本土住宅IP?
网络·网络协议·tcp/ip
huashengzsj12 小时前
企业OV泛域名证书价格多少?2026年市场报价与选购指南
网络协议·http·https
qq_4017004112 小时前
TCP 粘包问题深度解析:嵌入式网络开发的常见坑与解决方案
服务器·网络·qt·网络协议·tcp/ip
IT小白杨12 小时前
2026游戏工作室环境隔离指南:从设备指纹到移动IP的部署实践
前端·经验分享·网络协议·tcp/ip·游戏·安全架构·指纹浏览器
GitLqr12 小时前
从 TCP 底层看实时通信:为什么 SSE 往往比 WebSocket 更香?
websocket·http·openai
2401_8685347812 小时前
运维工程师大厂 Nginx 面试题(二)
linux·网络协议
XUEYUAN521214 小时前
代理日志分析与监控:代理池健康状态巡检与分级告警体系搭建(运维实战)
运维·网络·网络协议·tcp/ip·算法·架构
酒神dnspup14 小时前
服务器端口检测怎么做?用 DNSPup 核对开放端口、监听服务与暴露风险
网络·网络协议·http·ssl证书·http状态码·服务器端口