【测试方案】性能测试方案设计
什么是性能测试?
压力测试:强调极端暴力
稳定性测试:在一定压力下,长时间运行的情况
基准测试:在特定条件下的性能测试
负载测试:不同负载下的表现
容量测试:最优容量
性能测试方案设计流程
需求分析
开发或者产品经理的要求一般都比较抽象,比如:
- 帮我测试一下性能
- 你们测试专业,性能你们看着整
- 拍一下脑门,目标性能是并发数3w
我们需要挖掘,进行量化,达成共识:
- 测试目的
- 测试场景
- 测试目标
系统分析
- 了解系统整体架构,列出可能的瓶颈点
- 关注是否多进程/多线程架构,网络模块间搭配,锁,缓存队列等
- 资源消耗类型:CPU型,内存型,IO型
- 集群规模对性能影响
业务分析
- 了解生成主要的业务类型,每种业务的占比及重要度等
- 关注生成的业务数据模型,明确基础数据的构成和数据量
测试组网
- 了解系统的部署,关注各个模块间的网络耗时
- 了解测试部署和生产实际部署的比例(1:1)
- 了解机器的硬件类型:CPU,内存,磁盘,网卡等
测试场景
明确每个场景的测试目标,比如性能指标
测试工具
- 工具开源/自己调用API开发
- 确定是同步,异步
- 关注长连接,短连接
- 关注并发数