性能测试方案和用例模板
- 2019 年 10 月 10 日
- 筆記
XX项目
性能测试方案
1. 引言
1.1. 文档版本
版本 |
作者 |
审批 |
备注 |
V1.0 |
dayu |
XXX |
|
1.2. 项目情况
项目名称 |
XXXXXXXX |
项目版本 |
V2.31 |
项目经理 |
XXX |
测试经理 |
dayu |
所属部门 |
XXXXXXX |
1.3. 文档编写目的
本文档主要用于指导XX项目性能测试的开展。本文对项目性能测试的范围、目标、性能指标以及测试方法进行描述和定义,使测试人员能够按照此方案的指引,开展和实施项目性能测试,得出系统性能度量,以用于后续系统性能调优工作,并给出系统性能的客观评估。
2. 测试目标
2.1. 性能指标
- 系统所能承受的最大并发;
- 系统的各事务响应时间随用户数增加的发展趋势;
- 系统的事务成功率情况;
- 服务器资源(CPU,内存等)随用户数增加的耗用趋势;
- 系统在长时间高负载状态下的运行情况
指标分类 |
指标项目 |
备注 |
事务响应 |
每秒事务数(TPS) |
|
平均事务响应时间 |
||
事务最大响应时间 |
||
平均每秒处理事务数 |
||
事务成功率 |
||
资源利用率 |
CPU利用率 |
|
内存利用率 |
||
磁盘I/O |
2.2. 指标参考范围
列出每一项性能指标的参考值,
序号 |
指标项 |
优秀 |
中等 |
差 |
1 |
每秒事务数(TPS) |
|
|
|
2 |
平均事务响应时间 |
|
|
|
3 |
事务最大响应时间 |
|
|
|
4 |
平均每秒处理事务数 |
|
|
|
5 |
事务成功率 |
|
|
|
服务器性能指标:如有多组服务器可分别列出,如应用服务器,数据库服务器
6 |
CPU利用率 |
|
|
|
7 |
内存利用率 |
|
|
|
8 |
磁盘I/O |
|
|
|
2.3. 测试对象
列举纳入测试范围的模块/功能
序号 |
模块 |
备注 |
|
|
|
|
|
|
|
|
|
|
|
|
3. 测试方法
3.1. 场景设计
3.1.1. 基准测试
对各被测功能对象进行低并发测试,获取基准值,做为后续性能指标的比对基准。
基准测试 |
模块 |
功能 |
并发数 |
响应时间 |
备注 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.2. 单请求压力测试
对各被测功能对象进行高并发测试,探测系统性能拐点
单功能测试 |
模块 |
功能 |
并发数 |
响应时间 |
备注 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.3. 混合场景并发测试
模拟生产环境用户压力,多事务调用情况下探测系统性能拐点
混合场景测试 |
模块 |
功能 |
并发数 |
响应时间 |
备注 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.1.4. 稳定性测试
在一定负载条件下,对系统的稳定性进行度量(建议取系统最优处理能力负载条件下80%的并发数,并且综合复杂场景进行测试,使用服务器监控工具采集持续时间内服务器性能和资源占用信息。)
序号 |
测试场景/模块 |
并发数 |
功能项 |
占比(%) |
持续时间 |
备注 |
1 |
|
|
|
|
|
|
|
|
|||||
|
|
|||||
|
|
|||||
|
|
|||||
|
|
|||||
2 |
|
|
|
|
|
|
|
|
|||||
|
|
|||||
|
|
|||||
|
|
|||||
|
|
3.2. 用例模板示例
3.2.1. 性能基准测试用例
性能基准用例模板 |
|||
用例名称 |
商品查询 |
||
用例编号 |
Load001 |
||
功能模块 |
商品浏览展示模块(PLP) |
||
性能描述 |
在正常压力情况下(并发小于10)系统性能指标 |
||
前置条件 |
商品数据上传已完成 |
||
特殊约束 |
无 |
||
步骤 |
输入(数据) |
期望性能指标 |
实际性能指标 |
|
|
|
|
|
|
|
|
|
|
|
|
3.2.2. 压力测试用例
并发测试用例模板 |
||||
用例名称 |
商品查询 |
|||
用例编号 |
Conc001 |
|||
性能描述 |
在一定数据并发条件的系统性能表现 |
|||
前置条件 |
商品数据上传已完成 |
|||
特殊约束 |
无 |
|||
并发用户数与事务响应 |
||||
并发用户数 |
事务平均响应时间 |
事务最大响应时间 |
平均每秒处理事务数 |
事务成功率 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
并发用户数与服务器性能 |
||||
并发用户数 |
CPU利用率 |
内存利用率 |
磁盘I/O情况 |
其他参数 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4. 测试资源
4.1. 测试环境架构
4.1.1. 性能测试环境物理架构
说明本项目性能测试环境的物理架构,可以以物理架构图的方式表示。
4.1.2. 性能测试环境的基本配置
设备 |
IP地址 |
硬件配置 |
软件配置 |
服务器 |
|
CPU:2.6GHZ 4核 64位 RAM: 8GB Disk:326GB |
OS: CentOS7 Nmon |
控制机、负载机 |
|
CPU: 2.6GHz 4 核 RAM: 6GB Disk:100GB |
OS: WindowsServer2008 DatacCenter LoadRunner 11 |
4.2. 测试工具
说明本次测试使用到的测试工具和监控工具
1.负载工具:该测试将使用负载测试工具Load Runner 11,这是一种预测系统行为和性能的工业标准级负载测试工具。通过模拟用户实施并发负载及实时性能检测的方式来预测系统的行为并优化系统性能。
2.服务器监控工具:采用开源的Nmon工具,监控系统的性能状态。
4.3. 测试人员
组 |
成员 |
职责 |
总负责 |
张三 |
各组间工作协调、方案评审 |
测试组 |
李四 |
需求分析,测试方案编写,脚本编写,执行测试以及编写测试报告 |
5. 进度安排
序号 |
任务 |
工作量 |
开始日期 |
结束日期 |
责任人 |
1 |
测试方案制定 |
|
|
|
|
2 |
测试环境部署 |
|
|
|
|
3 |
测试数据及工具准备 |
|
|
|
|
4 |
测试脚本编写 |
|
|
|
|
5 |
测试执行 |
|
|
|
|
6 |
测试结果评估及报告 |
|
|
|
|