课程:B站大学
记录软件测试-性能测试学习历程、掌握前端性能测试、后端性能测试、服务端性能测试的你才是一个专业的软件测试工程师
性能测试-jmeter性能项目计划
- 性能测试计划
- 5.风险控制
- [6. 交付清单](#6. 交付清单)
- [7. 进度与分工](#7. 进度与分工)
- 8.编写性能测试用例
- 9.单功能点分析
- 10.接口组合用例
- 11.性能监控
- jmx脚本执行与自动化调度
-
-
- [1、Windows 环境(JMeter 脚本调试)](#1、Windows 环境(JMeter 脚本调试))
- [2、 Linux 集群(Shell 调用 JMX + Python 环境)](#2、 Linux 集群(Shell 调用 JMX + Python 环境))
- [3、CI/CD 集成(如 Jenkins/GitLab CI)](#3、CI/CD 集成(如 Jenkins/GitLab CI))
-
- 实践是检验真理的唯一标准
性能测试计划
1、测试背景
轻商城是公司新开发的一个电商项目,为了保证项目上线后能够稳定的运行,且在后期推广中能够承受用户的增长,需要进行性能测试。
2、测试目的
对新电商项目进行性能测试的核心目的包括:
- 确定核心业务功能的TPS
- 对业务流程(多接口组合)进行压测
- 系统能在实际系统运行压力的情况下,稳定的运行24小时
3、测试范围
通过对性能测试需求的调研和分析,确定被测系统的测试范围如下(此处确定核心功能业务接口流程):
4. 测试策略
4.1 基准测试
先做基准测试,确定估算的标准。
4.2 负载测试
通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足系统的性能指标情况下,系统所能够承受的最大负载。分别模拟5、10、30、50、100个用户对系统进行负载测试,查看不同并发时系统软件各项指标是否符合需求。
4.3 稳定性测试
- 用200用户对系统进行7*24小时的不间断稳定性测试,查看服务器日志内有无异常和报错;系统软件各项指标中间有无异常波动;是否存在内存溢出之类的问题。
- 验证系统长期运行的稳定性以及是否存在内存溢出之类的问题。
5.风险控制

列举出性能测试的风险,主要是线程性能测试,但是一般测试都是在测试环境,隔离环境进行的,性能测试主要就是模拟测试,当让大厂会在线上预先进行测试的,比如容器挂载映射
6. 交付清单
性能测试计划、测试脚本、性能缺陷统计和性能测试报告等。
7. 进度与分工
阶段 | 事项 | 开始时间 | 结束时间 | 状态 | 责任人 |
---|---|---|---|---|---|
需求阶段 | 需求评审 | 完成 | 多方参与 | ||
系统架构图 | 完成 | 开发 | |||
需求调研 | 完成 | 性能测试人员 | |||
准备阶段 | 环境交付 | 完成 | 运维、开发 | ||
应用部署 | 完成 | 运维、开发 | |||
数据准备 | 完成 | 开发、DBA、测试 | |||
脚本开发 | 完成 | 性能测试人员 | |||
实施阶段 | 执行压测 | 未完成 | 性能测试人员 | ||
服务监控 | 未完成 | 运维、测试 | |||
数据收集 | 未完成 | 性能测试人员 | |||
结束 | 报告评审 | 未完成 | 多方评审 |
8.编写性能测试用例

这一步和功能测试差不多,比较简单,需要确定好预期结果,后面才能进行脚本开发(可以用AI进行开发,也可以自己抓包找接口,AI进行jmx开发很快,稍微修改下就可以使用了)
9.单功能点分析
目标:验证单个接口/功能的性能指标(如TPS、响应时间、错误率)。
范围:核心功能接口(如登录、查询、提交订单)。
指标:
响应时间(≤500ms)
TPS(≥100)
错误率(≤0.1%)
方法:单接口压测,逐步加压至阈值。
10.接口组合用例
目标:验证多接口组合场景下的整体性能(如用户下单流程)。
范围:典型业务流(如登录→浏览→加购→支付)。
指标:
整体响应时间(≤2s)
吞吐量(≥50事务/秒)
资源利用率(CPU≤70%,内存≤80%)
方法:模拟真实用户路径,混合并发测试。
11.性能监控
使用Prometheus+node-exporter+grafana:
具体配置在linux中即可,后续我会单独分享从0到1搭建性能测试监控体系以及压测集群服务端监控。
jmx脚本执行与自动化调度
1、Windows 环境(JMeter 脚本调试)
在 Windows 上使用 JMeter GUI 调试 .jmx脚本,确保逻辑正确(参数化、断言、监听器等)。
调试完成后,将 .jmx脚本 + 相关依赖文件(如 CSV 数据文件、JSON 配置)上传到 Linux 集群(如 /opt/jmeter/scripts/)。
2、 Linux 集群(Shell 调用 JMX + Python 环境)
在linxu上安装相同版本和jmeter以及集群相关工具,编写shell文件调用jmx文件
编写python自动化脚本,解析JTL结果和自动化加载依赖对应sh文件执行相关逻辑最后将性能测试报告导出到windows上并且发送钉钉、飞书、邮箱等
3、CI/CD 集成(如 Jenkins/GitLab CI)
使用python自动化批量加载不同性能测试sh文件执行不同的jmx文件,最后使用Jenkins完成流水线集成并且发送通知完成性能测试整个流程