导图社区 性能测试方案
测试方法—性能测试方案,记于2019.11.19。性能测试可以分为六个步骤依次是:确定目标、制定策略、明确内容、关键问题、具体实施、书写报告。详细内容见思维导图,如有不足,欢迎大家提出建议和意见!
社区模板帮助中心,点此进入>>
互联网9大思维
电费水费思维导图
D服务费结算
产品立项报告
产品经理如何做好项目管理
经验分享:产品经理必懂的产品思维
产品诞生过程
产品周期图
材料的力学性能
开门红的思考
性能测试
1. 目标
性能评估、评估系统容量
2. 策略
负载测试
模拟系统在正常负载压力场景下,考察系统的性能指标。验证系统是否能满足预期的业务压力场景
压力测试
压力测试会对被测系统逐步加压,在加压的过程中考察系统性能指标的走势情况,最终找出系统在出现性能拐点时的并发用户数,也就是系统支持的最大并发用户数
疲劳强度测试
模拟出长时间系统能承受的最大业务负载量
3. 内容
3.1 压测系统分析
系统物理结构分析:x台web服务器 + y MySQL
业务流程分析
上游接口
回调
第三方接口
数据
业务指标:单系统需要换算成业务KPI流经该系统时所承担的系统QPS/TPS
3.2 压测环境分析
硬件环境
测试环境?
与线上业务等同的测试环境?
线上环境?
软件环境
线上master分支
改造:是否需要mock、验签等
数据环境
MySQL数据库数据准备
监控环境
web服务器性能监控
数据库连接池监控
tomcat线程池监控
3.3 压测工具选择
单机
集群
3.4 压测方案
3.5 数据监控、分析
Jmeter监控器
并发用户数
事务成功率
事务吞吐率
事务平均响应时间
服务器、数据库、tomcat监控等工具
压力机:CPU利用资源、处理器队列长度、内存利用率、磁盘IO状态、网卡带宽使用情况等;服务器:CPU利用资源、处理器队列长度、内存利用率、磁盘IO状态、网卡带宽使用情况等;数据库:数据库连接数、数据库读写响应时长、数据库读写吞吐量等;网络:网络吞吐量、网络带宽、网络缓冲池大小;缓存(Redis):静态资源缓存命中率、动态数据缓存命中率、缓存吞吐量等;
6. 报告
0. 需求概述
1. 初步结论
2. 测试结果(分析)
附:测试方案和设计思路、方法
5. 实施
系统架构分析、给出测试环境部署详情(RD)
压测接口梳理,解决压测服务依赖问题(RD)
业务场景分析、确定压测覆盖场景(RD、QA)
压测环境部署、硬件、服务、数据init等
压测工具准备、脚本编写、参数构造(QA)
监控部署(QA、RD)
压测脚本执行、数据监控、业务监控(QA、RD)
结果报告和问题初步分析(QA)
问题定位解决(QA、RD)
4. 关键问题
服务依赖问题
第三方服务依赖
服务化内部依赖
压测场景问题
压测环境问题
选择什么环境?
接口读写问题
写接口
状态校验多的接口,通过一条/几条白名单数据打压
状态校验少的接口,通过批量构造数据打压
读接口
一批数据循环打压,需要去除程序中的缓存