首页/开发/软件测试速查/压测反模式清单

压测反模式清单

压测反模式清点:压小数据求好看数字、只看平均不看分位、压测机先到瓶颈、无思考时间、失败请求计入吞吐、脚本与真实行为差异大、结果不可复现。

软件测试速查开发更新于 2026-10-13

反模式是什么

性能测试反模式是「做了压测却得不出可信结论」的典型做法:环境失真(空库、全冷缓存)、模型失真(流量比例与思考时间脱离真实)、度量失真(只看均值、忽略错误率)、方法失真(无基线、单次定论)。识别这些坑,比多买压测机更能提升结论质量。

基本信息

环境失真测试库是空表、缓存全冷或全热,与线上数据量差几个数量级
模型失真给所有接口均压,偏离真实调用比例与思考时间
度量失真只报 TPS 与均值,不报错误率、分位与资源曲线
方法失真不设基线、不重复运行,一次结果直接下结论
资源盲区压测机的 CPU、带宽、端口先饱和,测的不是系统上限
结果管理脚本版本、数据规模、运行参数不归档,无法复现

典型使用场景

  • 评审压测方案:按清单逐项核对再开工
  • 复盘结论被推翻的案例:找出当时哪个环节失真
  • 新人培训:先立起「条件先行」的意识再学工具
  • 评估外部压测报告:检查环境、模型、度量三项是否说清
  • 把清单变成前置检查项,固化进压测开工流程

反模式与后果

反模式后果修法
只看均值尖峰被掩盖,用户侧投诉部门先发现报 p95 与 p99 分位
无思考时间瞬时洪峰被当常态,容量虚高按真实节奏建模
数据量悬殊索引与缓存行为完全不同按线上规模灌数
压测同机部署压测机与被测服务互相抢资源独立压测机与网络
无基线对照数字无法解释好坏先跑基线再谈优化
结论必须带条件:脚本版本、数据规模、环境配置、并发模型缺一不可,缺了就无法复现,也无法与下次对比。
生产环境压测要先评估写操作的影响面:优先只读影子流量或隔离环境,避免压测数据污染真实业务。
错误率上升时吞吐上涨不是成绩:超过拐点后的「吞吐」多半是快速失败堆出来的数字。

易错点

  • 拿单次压测数字对外承诺容量:波动与冷热差异一概没算进去
  • 脚本每次迭代新建连接:压测的是连接建立开销,不是业务性能
  • 忽略上下游:只压被测服务,网关、数据库、第三方先被打挂
  • 压测机与被测服务抢资源:双端都在瓶颈上,结果互相污染无法归因

数据来源与参考

  • Gil Tene:How NOT to Measure Latency
  • JMeter 官方文档(压测注意事项)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌