JMeter性能测试完整指南

注意
本文最后更新于 2025-09-12,文中内容可能已过时。
  1. 安装 JDK 并配置环境变量,最好 JDK 8 以上。
  2. 下载 JMeter

环境准备和启动

下载 JMeter
/images/posts/JMeter性能测试完整指南/1.png
(图1)

Windows 双击 .bat 运行

/images/posts/JMeter性能测试完整指南/2.png
(图2)

切换语言为中文

/images/posts/JMeter性能测试完整指南/3.png
(图3)

测试计划配置

添加线程组

  1. 右键点击「测试计划」
  2. 依次选择「添加」→「线程(用户)」
  3. 点击「线程组」
/images/posts/JMeter性能测试完整指南/4.png
(图4)

添加HTTP请求

  1. 右键点击「线程组」
  2. 依次选择「添加」→「取样器」
  3. 点击「HTTP 请求」
/images/posts/JMeter性能测试完整指南/5.png
(图5)

添加HTTP信息头管理器

  1. 右键点击「线程组」
  2. 依次选择「添加」→「配置元件」
  3. 点击「HTTP 信息头管理器」
/images/posts/JMeter性能测试完整指南/6.png
(图6)

添加HTTP请求默认值

  1. 右键点击「线程组」
  2. 依次选择「添加」→「配置元件」
  3. 点击「HTTP 请求默认值」
/images/posts/JMeter性能测试完整指南/7.png
(图7)

添加测试报告

  1. 聚合报告:可实时显示请求的平均响应时间、中位数、90% 百分位响应时间、吞吐量等数据。
  2. 图形结果:以图形化方式展示响应时间等数据变化情况。
  3. 汇总报告
  4. 查看结果树:以请求的方式展示接口是否响应成功。
/images/posts/JMeter性能测试完整指南/8.png
(图8)

配置示例

以下是完整的测试计划配置示例,展示了如何设置一个典型的HTTP接口性能测试:

具体的配置参数设置

这些配置包括:

  • 线程组参数:设置并发用户数和循环次数
  • HTTP请求配置:接口地址、请求方法、参数设置
  • 响应断言:验证接口返回结果的正确性
  • 定时器设置:控制请求发送的频率和时间间隔
/images/posts/JMeter性能测试完整指南/12.png
(图12)
/images/posts/JMeter性能测试完整指南/9.png
(图9)
/images/posts/JMeter性能测试完整指南/10.png
(图10)
/images/posts/JMeter性能测试完整指南/11.png
(图11)

生成 HTML 压测报告

选择报告保存的位置,因为 JMeter 没有配置环境变量,所以我们需要把这个文件放到 JMeterbin 目录下去执行生成报告的命令。

报告生成步骤

  1. 执行测试:在JMeter中完成测试配置后,点击运行按钮开始压测
  2. 保存测试结果:测试完成后,将结果保存为.jmx文件
  3. 生成HTML报告:使用命令行工具生成可视化的HTML报告
/images/posts/JMeter性能测试完整指南/13.png
(图13)

bin 目录下打开 cmd, 执行命令

1
jmeter -g 聊天接口结果数报告.jmx -o E:\software\apache-jmeter\bin\WebReport

报告内容解读

生成的HTML报告包含以下关键指标:

  • 响应时间统计:平均响应时间、中位数、90%和95%百分位响应时间
  • 吞吐量数据:每秒处理的请求数(Requests per Second)
  • 错误率:请求失败的比例和具体错误信息
  • 并发性能:系统在不同并发负载下的表现

会在 E:\software\apache-jmeter\bin\WebReport 下生成 WebReport 文件夹,文件夹中的 index.html 就是压测报告。

报告查看

/images/posts/JMeter性能测试完整指南/14.png
(图14)

打开 index.html 文件,可以在浏览器中查看详细的性能分析报告,包含图表和统计数据。

报告示例

最终生成的报告界面如图15所示,提供完整的性能测试分析:

/images/posts/JMeter性能测试完整指南/15.png
(图15)

最佳实践建议

压测注意事项

  1. 环境隔离:在测试环境进行压测,避免影响生产系统
  2. 参数调优:根据实际情况调整线程数、 ramp-up 时间和循环次数
  3. 数据准备:准备充足的测试数据,确保测试结果的准确性
  4. 监控配合:结合系统监控工具,观察服务器资源使用情况

性能调优建议

  • 响应时间过长:检查数据库查询、优化接口逻辑、增加缓存
  • 吞吐量低:分析系统瓶颈,可能是CPU、内存、网络或数据库问题
  • 错误率过高:检查接口稳定性、参数合法性、服务器资源不足

常见问题排查

  • 连接超时:检查网络连通性和服务器响应时间
  • 内存溢出:调整JMeter堆内存设置,优化测试脚本
  • 结果不一致:确保测试环境配置与生产环境一致

0%