性能测试全栈笔记:3.性能测试基础-流程篇
性能测试全栈笔记
三、性能测试基础
1.性能测试流程
- 需求调研
- 测试计划
- 环境搭建
- 数据准备
- 测试脚本
- 压测执行
- 调优回归
- 测试报告
下面开始解析重点流程:
1.需求调研:
- 项目背景
- 测试范围
- 业务逻辑
- 系统架构
- 配置信息
- 测试数据量(量级要一致)
- 外部依赖
- 系统使用场景
- 日常业务量
- 预期指标
- 上线时间
2.测试计划:
- 项目描述
- 业务模型及性能指标
- 测试环境说明
- 测试资源
- 测试方法以及场景设计原则:
- 原则1:基准测试
- 原则2:单交易负载测试
- 原则3:混合场景测试
- 原则4:高可用性测试
- 原则5:异常场景测试
- 原则6:稳定性测试
- 原则7:其他特殊场景
- 测试进度安排及测试准则
3.环境搭建
- 测试机器硬件配置尽量和线上一致
- 系统版本与线上一致
- 测试环境部署线上最小单元模块
- 应用、中间件、数据库配置要与线上一致 其他特殊配置
4.数据构造
方法一:业务接口:
- 场景:适合数据表关系复杂
- 优点:数据完整性比较好
方法二:存储过程:
- 场景:适合表数量少,简单
- 优点:速度最快
方法三:脚本导入:
- 场景:适合数据逻辑复杂
- 优点:自由度比较高
5.脚本编写
- 选择协议
- 选择工具
- 断言
- 参数化
- 关联
- 检查点
- 事务判断
6.压测执行
- 分布式执行
- 监控
- Linux
- JVM(JAVA虚拟机)
- 数据库
- 收集测试结果
- 数据分析 瓶颈定位
7.调优回归(步骤)
- 性能调优需要整个团队完成
- 反复尝试
- 回归验证
- 监控工具
- 全链路排查
- 日志分析
- 模块隔离
8.测试报告
- 概述
- 测试环境
- 结果与分析
- 调优说明
- 项目时间表
- 结论
- 建议
9.性能测试工具
- Loadrunner(功能强大、重量级、商业软件)
- Jmeter(小巧灵活、轻量级、开源)
- Ngrinder( 开源压测平台)
- locust(Python开源框架)
本期主要介绍的是Jmeter工具!
10.现状和趋势
- 性能测试自动化、平台化
- 测试工具多样性、开源、二次开发
- 在高并发下验证功能正确性
- 线上线下相结合,线上发现问题,线下调优
至此,性能测试全栈笔记-流程篇完结,依然是纯理论,但已经进入性能测试正式阶段,望多理解,多记忆