1. 什么是性能测试
性能测试时通过压测根据(Jmeter, Loadrunner),通过特定方式,对系统施加一定的压力:正常、异常负载以及峰值,得到各项性能指标、保证系统的性能需求。
价值和目的:
1. 评估系统的能力;
2. 识别系统的弱点、瓶颈;
3. 检查系统的隐藏问题;
4. 检验系统的稳定性和可靠性。
2. 性能测试指标
1. 虚拟用户数:线程=用户
2. 并发数:指在某一时间,一定数量的虚拟用户同时对系统的某个功能进行交互,一般通过集合点实现。
3. 事务:一个接口可以时事务,多个接口也可以时事务,一个流程也可以是事务,事务代表一个完整的功能,由测试人员决定。
4. 场景:性能测试的用例。
5. 响应时间 RT:Response Time
5.1 平均响应时间
5.2 中位数
5.3 90%
5.4 95%
5.5 99%
5.6 基准测试:1个用户请求接口,200-500 ms
5.7 压力测试:N 个用户并发请求接口, 2秒
6. TPS:每秒事务数,表示系统每秒能处理的事务(事务通常指一组原子性操作,如银行转账)。
Transactions per second
计算公式:总的事务数 / 总的运行时间
比如:某一个系统1分钟处理 1000 个事务,那么 TPS = 1000/60 = 16.7
7. QPS:每秒查询数,表示系统每秒能够处理的请求(一般指 查询类请求,如接口请求、SQL查询)。一般情况下 TPS <= QPS
8. 吞吐率:系统在单位时间内处理的数据量(比如 MB/s,文件下载、视频流场景常用)。
9. 资源利用率:服务器:CPU、内存、磁盘、网络
CPU 使用率 | 系统 CPU 占用百分比,重点关注是否接近 100%。 |
内存使用率 | 系统内存消耗情况,是否存在内存泄漏或溢出。 |
磁盘 I/O | 读写速率(MB/s)、I/O 等待时间。 |
网络带宽 | 网络上传/下载流量,是否成为瓶颈(单位:Mbps、KBps)。 |
连接数 | 系统同时打开的网络连接数(Web 服务、数据库连接池常关注)。 |