压力测试与性能测试的区别

1. 压力测试

定义:通过逐步增加系统负载(如并发用户数、请求量),直至系统超出极限(崩溃、响应超时、错误率飙升),以确定系统的最大承载能力和稳定性边界。

常见场景:

  • 电商平台“双11”峰值流量模拟(如10万用户同时下单);
  • 服务器CPU/内存资源耗尽时的表现测试;
  • 数据库在海量数据写入/查询下的极限处理能力。

核心指标:

  • 最大并发用户数、最大TPS(每秒事务数);
  • 系统崩溃阈值(如CPU使用率100%、内存溢出);
  • 错误恢复能力(崩溃后重启时间、数据一致性)。

2. 性能测试

定义:在正常或预期负载下,测试系统的响应速度、吞吐量、资源利用率等性能指标,验证是否满足业务需求和性能基准(如“页面加载≤3秒”“接口响应≤500ms”)。

常见场景:

  • 网页/APP日常访问的响应时间测试;
  • 数据库查询/写入操作的性能优化(如索引效率);
  • 接口在“日均1万次请求”下的稳定性验证。

核心指标:

  • 响应时间(RT)、吞吐量(TPS/QPS);
  • 资源利用率(CPU、内存、磁盘I/O、网络带宽);
  • 错误率(如HTTP 5xx错误占比)。

3. 压力测试 vs 性能测试

在这里插入图片描述

4. 总结

性能测试:“在正常情况下跑一跑,看快不快、稳不稳”(验证是否达标);
压力测试:“往死里怼,看什么时候垮、怎么垮”(探索极限边界)。