一.性能测试基础
1.负载测试
- 通过不断加压,找到性能指标的极限
- 用来了解系统容量
2.压力测试(强度测试)
- 测试系统在一定饱和状态下,如cpu内存饱和的情况下,系统能够处理的会话能力,以及系统会不会出现错误
- 用于测试系统的稳定性
3.并发测试
- 测试并发方面可能出现的问题,如内存泄漏,线程锁和资源争夺等
- 用于寻找并发时可能出现的问题
4.配置测试
- 通过对被测系统的软硬件环境的调整,了解各种不同配置对系统的性能影响的程度,从而找到系统对各项资源的最优分配
- 一般用于性能调优和规划能力
5.性能测试(狭义)
- 通过模拟生产运行的业务压力和使用场景结合,测试系统的性能是否满足生产性能要求
- 验证系统是否满足需求
6.可靠性测试
- 在给系统一定压力的情况下,使系统运行一段时间,以此检验系统是否稳定
- 验证系统是否支持长期稳定的运行
7.性能指标
- tps
- 响应时间
- 吞吐量
- 资源利用率
- cpu
- 内存
- 带宽利用率:100Mbps = 12.5MB/s
- 并发量
- 并发用户
- 并发请求
二.测试流程
1.需求分析
- 测试对象
- 测试场景
- 确定性能指标
例:要求每天完成交易额2亿- 客单价:300
- 2/8原则:80的用户请求,集中在20%的热点数据上,或时间段
- 求每秒最大交易数:(2亿/300 * 0.8) / (24 * 0.2 * 3600) = 30
2.测试计划
- 测试目标
- 测试人员组织
- 测试进度安排
- 压力机(配置,要求, 数量)
- 风险
3.测试方案
- 测试工具:loadrunner,jmeter
- 测试环境:数据库,服务器,架构设计,有条件的话尽量和生产环境一致
- 测试策略:单一场景,混合场景
- 监控工具:
- linux:nmom,rpc,jvisualVm,Spotlight
- windows:Spotlight, perfmon.exe
4.测试用例设计
- 基于脚本的用例
- 基于场景的用例
5.测试执行
- 脚本编写
- 场景监控设计
- 运行场景
- 监控场景
- 测试报告
6.定位分析问题
- 后端:代码,软件,硬件
- 前端
- 网络
三.熟悉业务
- 高频
- 核心
- 扎堆场景
四.熟悉项目的软件架构和部署
这个看自家公司了