我是山茶,一个探索 AI + 测试的程序员,欢迎与我沟通交流
一、性能测试流程规范化的意义
规范化的性能测试流程能帮助测试发现潜在的性能问题和瓶颈,也能确保性能测试的可重复性和可比性。
同时可以帮助确定系统的容量,降低风险及维护成本,提高用户体验和满意度。
二、性能测试流程
一)性能测试全流程
性能测试整体流程基础可以分为 6 个阶段,分别是"性能测试需求分析"、"性能测试需求评审"、"性能测试准备"、"性能测试执行"、"问题分析与定位"、"性能测试报告与总结"
这 6 个阶段是毕竟的阶段,缺一不可,不同的企业发起性能测试时,通常流程只会比这 6 个阶段多,不会减少流程或直接开始做。
二)测试流程详解
性能测试需求分析阶段
-
了解业务流及架构,梳理业务架构及数据流架构(如果有的话就不用你梳理)
-
标记疑惑点,整理文档
性能测试需求评审
-
了解业务背景、明确业务目标
-
解决疑惑点,记录在档
-
确定业务测试范围及业务测试周期
性能测试准备
-
测试方案设计
- 方案内容包含:测试目标、测试背景、测试周期、测试人员安排、测试里程碑设定、测试资源分配、测试环境、测试指标要求、测试风险评估、测试策略及测试场景等
-
测试环境准备
- 需要按照测试数据量级或测试业务配置测试环境资源,可选择进行同比例缩小或直接建立性能测试环境或使用线上环境并搭建影子库
-
测试策略设计
-
简单的策略
-
固定利率策略
-
可变负荷策略
-
破裂性能测试策略
-
线程可线性策略
-
网格策略
-
脚本策略
-
-
测试数据准备
-
业务模型决定数据模型
-
业务需求决定数据模型
-
用户习惯决定数据模型
-
-
测试脚本准备
-
根据业务使用构建脚本
-
根据用户使用习惯构建单接口或混和使用场景脚本
-
根据需求分析中的业务薄弱点组合场景脚本
-
性能测试执行
根据构架场景脚本、测试策略,以及业务执行策略,在已准备好的测试环境中,执行场景脚本,实时调整压力情况
问题分析与定位
如图所示,性能测试的问题定位与分析有一定的了流程及方法
通常可能存在的性能瓶颈点有
性能测试报告与总结
- 测试报告中主要包含:测试背景、测试目的、测试范围、测试指标(指标 建议值)、使用的测试工具、测试环境(基本配置)、测试内容(测试的场景、接口等)、使用的压测模型、测试数据使用模型、测试问题及分析解决方案、总结问题及是否通过
- 测试总结是对本次性能测试中,优秀的点及不足点的总结,包含下次哪些可以借鉴,哪些不足可以改进,用作下次或其他人提供参考依据。