性能测试方案模板
1.概述
1.1. 测试背景 1.2. 测试目的本次测试依据xx应用系统现有生产上内容以及特点,对本次性能测试范围进行的测试:
1) 测试环境下,通过单交易负载场景测试,探索性能环境下被测交易的最大处理能力;
2) 测试环境下,通过业务高峰场景测试,探索性能环境下,系统各项性能指标的最大最优表现;
3)测试环境下,通过稳定性场景测试,验证系统长时间稳定运行能力,验证交易成功率,整体处理能力及各项性能资源表现是否稳定;
1.3. 测试地点广州开发中心
1. 测试范围及方法 2.1. 测试范围概述本次测试的主要范围是xx系统,红色线框内的为本次需要测试的范围:
2.2. 需要测试的特性考察系统在测试环境下,获取xx应用系统的容量基准;
考察系统在测试环境下,获取xx应用系统的性能容量;
考察系统在测试环境下,持续运行24小时的稳定情况。
2.3. 性能测试场景设计 2.3.1测试模型xx系统测试模型是项目组根据生产高峰信息提供,经统计其最新测试模型如下:
序号
交易码
交易名称
业务占比
1
2
4
5
6
2.3.2测试场景本次性能测试测试场景如下:
1)单交易负载测试场景,验证系统单个交易的处理能力;
2)混合交易负载测试场景,验证联机交易日高峰处理能力的场景;
3)稳定性测试场景,验证系统长时间稳定运行能力的场景
2.4. 测试指标指标分类
序号
指标描述
指标数据
指标说明
处理时间
资源效率
1
CPU使用率
2
内存使用率
3
磁盘读写率(I/O)
系统稳定性
1
系统长时间稳定运行能力
2
交易成功率
处理能力
1
2
3
4
5
2. 测试准则 2.1启动准则业务模型建立完毕。
测试方案和测试案例评审通过。
测试环境准备完毕,包括:
测试环境设备安装调试完毕;
应用服务器安装成功,待测试版本已正确部署;
测试客户端机器到位,系统软件安装完毕;
网络配置正确,连接通畅,可以满足压力测试需求;
测试所需的存储到位;
测试环境已经过功能验证测试并测试通过。
测试工具和监控工具已准备就绪。
测试数据准备就绪并验证通过。
测试人员、监控人员和支持人员(业务、技术)已到位。
测试脚本已经开发并调试通过。
2.2结束准则测试案例执行完毕。
测试发现的问题和缺陷都得到正确的分析和处理。
测试过程中测试指标达到性能阀值。
测试报告通过评审。
2.3测试暂停和再启动的准则暂停准则:
测试任务、方案、计划等发生重大变更;
系统测试重大问题发现:包含技术测试过程中若发现被测系统重大BUG需要暂停修复;
测试环境受到干扰,比如服务器被临时征用,或服务器的其它使用会对测试结果造成干扰;
需要调整测试环境资源,如加减CPU数目,增加存储,增加服务器等等;
再启动准则:
测试中发现问题得以解决;
测试环境恢复正常;
环境调整完毕;
3. 测试环境和配置参数 3.1. 测试环境配置表 3.1.1. 系统测试环境配置表系统类型
系统版本
配置
系统用途
IP地址
AIX
PCS
3.1.2. 测试用机环境配置表系统类型
系统版本
内存
系统用途
IP地址
PCS
3.2. 软件配置 3.2.1. xx系统测试环境软件配置主机名
操作系统
应用软件
应用版本
4. 测试策略 4.1. 测试发起策略发起方式:使用接口方式和模拟用户行为发起请求;
通讯方式:HTTP协议
交易通讯链路:
4.2. 测试执行策略测试主要按以下顺序执行:
4.3. 测试监控策略 4.3.1应用服务监控在测试过程中,针对项目组提供的重点应用服务进行监控,需要监控的内容由项目组配合完成。
4.3.2主机资源监控监控工具
指标类型
指标名称
指标描述
主机监控-NMON
CPU
Memory
Pages
Disk
4.3.3数据库资源监控对数据库的监控可以采用AWR辅助工具,对整个测试过程中的数据库各种指标进行监控,重点监控指标:
监控工具
指标类型
指标名称
指标描述
AWR
Memory
User
SQL
Wait
5. 测试内容 5.1单基准测试测试目的:获取系统待测交易平均响应时间。同时为后续单交易测试及稳定性场景的性能测试和性能分析提供参考依据。
测试方法:
5.2单交易负载测试测试目的:对系统所选取的待测交易进行单交易负载测试,获取交易平均响应时间,并验证交易是否存在并发性问题。
测试方法:
5.3混合负载测试测试目的:获取系统处理能力、交易响应时间、各相关主机系统的资源(CPU、内存、IO)使用情况和交易成功率等指标。
测试方法:
5.4稳定性测试测试目的:获取系统在并发压力(交易整体最优处理能力的80%)下,持续运行24小时系统业务处理能力、响应时间、各主机资源消耗情况。
测试方法:
6. 测试实施准备 6.1测试环境准备根据测试环境需求,准备相应主机服务器及相应数据库、应用软件,保证其版本、补丁配置,确保网络无通讯故障。
根据被测试系统拓扑图进行各服务器系统部署,并进行连通性测试,保证服务器正常运行,交易流程可以走通。
6.2测试工具准备本次测试使用JMeter 4.0进行接口类型交易的单交易负载测试。
6.3测试数据准备根据本次测试涉及的交易,项目组以尽量接近生产环境实际业务数据量为依据,准备各表的数据量。
6.4测试脚本准备测试脚本为测试组人员利用专业测试工具LoadRunner和JMeter开发,根据测试模型中选定交易进行脚本编写,且需要在相关测试环境中进行调试、验证,保证测试脚本的可用性。
7. 测试组织分工部门/组
职责
接口人/责任人
测试组
1、 协调相关单位部署测试环境、应用版本;
2、 制定测试计划、编写测试方案、设计测试用例;
3、 脚本开发、调试、数据验证;
4、 测试执行、监控、记录、分析、结果数据收集;
5、 测试结果分析;
6、 编写、提交性能测试报告。
项目组
1、 基础设施环境配置检查、确认;
2、 协助进行测试环境的部署、联调;
3、 应用版本的部署、检查及确认;
4、 被测应用系统部署;
5、 测试全过程提供技术支持和业务支持;
6、 负责协调提供测试所需基础数据及测试数据;
7、 协助对应用、数据库等的监控;
8、 缺陷分析、定位、解决;
9、 协助测试结果分析。
8. 测试计划根据系统性能测试需求以及项目工作计划,确定测试人员、测试时间、测试资源,制定性能测试计划。
编号
阶段/任务
工期
预期开始时间
预期完成时间
1
测试调研阶段
6
1.1
性能需求获取
1
1.2
测试方案编写
2
1.3
测试方案评审及修改
3
2
测试准备阶段
4
2.1
环境准备(软硬件,版本,挡板,数据)
2
2.2
测试脚本编写
2
3
摸底测试阶段
16
3.1
2
3.2
2
3.3
2
3.4
2
3.5
8
4
测试执行阶段
10
3.1
单交易基准测试
1
3.2
单交易负载测试
2
3.3
混合场景容量测试
1
3.4
稳定性测试
1
3.5
调优复测
5
4
测试总结阶段
5
4.1
测试结果分析,归档
1
4.2
测报报告编写
1
4.3
测试报告评审及修改
3
9. 测试项通过/不通过准则满足《需求规格说明书》中的性能要求。
10. 测试输出 10.1. 过程性输出《xx项目-系统性能测试方案》;
《xx项目_性能测试数据记录》;
测试脚本(JMeter *.jmx和LoadRunner Vuser *.usr形式);
测试场景(JMeter *.jmx和LoadRunner Scenarios *.lrs形式);
测试结果;
主机监控数据。
10.2. 结果输出《xx项目_系统性能测试报告》
11.测试风险分析
见《测试风险管理表》。