当前位置:文档之家› 性能测试方案

性能测试方案

1.引言
说明测试方案中所涉及内容的简单介绍,包含:编写目的,项目背景、参考文档,以及预期的读者等。

1.1.编写目的
本文档描述××系统性能测试的范围、方法、资源、进度,该文档的目的主要有:
1.明确测试目的范围。

2.明确测试范围和目标。

3.明确测试环境需求,包括:测试需要的软、硬件环境以及测试人力
需求。

4.确定测试方案,测试的方法和步骤。

5.确定测试需要输出的结果和结果表现形式。

6.分析测试的风险,寻找规避办法。

1.2.项目简介
简要描述与测试项目相关的一些背景资料,如被测系统简介,项目上线计划等。

1.3.参考文档
说明文档编写过程参考引用的资料信息。

2.测试目的、范围与目标
2.1.测试目的
根据项目总体计划明确项目测试目的。

常见的测试目的如下(依据项目的实际情况修改。

本次性能测试的主要目的在于:
²测试已完成系统的综合性能表现,检验交易或系统的处理能力是否满足系统运行的性能要求;
²发现交易中存在的性能瓶颈,并对性能瓶颈进行修改;
²模拟发生概率较高的单点故障,对系统得可靠性进行验证;
²验证系统的生产环境运行参数设置是否合理,或确定该参数;
²获得不同备选方案的性能表现,为方案选择提供性能数据支持。

2.2.测试功能范围
说明本项目需要进行测试的待测系统功能范围,列出被测对象的测试重要性及优先级等,提供一份简要列表。

对于交易类功能要细化到每一个交易码;对于页面类功能要细化到每一个发起页面。

下面表格供参考,非强制使用。

如果测试目的为方案验证,需要文字列出需要验证的方案项。

明确列出说明本次测试需要关注的测试指标的定义及范围,不需要关注的测试指标也应列出。

下面的内容供参考。

本次性能测试需要获得的性能指标如下所列:
²交易的响应能力:即在单交易负载和模拟生产交易情况的混合场景负载压力情况下,系统的响应时间。

²每秒处理事务数:即应用系统在单位时间内完成的交易量(TPS)。

²批处理的运行时间。

²系统可支持的并发用户数量。

本次性能测试的限制性指标为:
²系统资源使用情况:在正常压力下,应用服务器和数据库服务器的CPU、Memory占用率应分别低于70%、80%,数据库存储空间和文件
系统空间占用率应低于70%。

²交易的成功率:系统运行在当前(或规划)的负载120%以上时的稳定性或可靠性数据。

要求为测试交易持续运行8小时以上,交易成功
率不低于99.5%。

本次性能测试不需要关注的指标:
²业务流程/路径覆盖率。

²业务数据的完整、正确性。

²其他诸如系统易用性、可管理性等属于专项测试的内容。

]
2.4.测试目标
明确本次测试各功能项的测试指标需要达到的测试目标,该目标须由项目
组提出或最终确认。

该测试目标可能涉及到的具体指标值有:
²针对不同类型交易的单交易事务平均响应时间
²针对不同类型交易的单交易事务TPS值
²在负载情况下的单交易事务平均响应时间
²在负载情况下的单交易事务TPS值
²在负载情况下的系统综合TPS值
可以列表方式提出(下表供参考,非强制使用),也可以以文字方式说明,要求有明确的目标数值
说明本项目生产环境的物理架构,可以以物理架构图的方式。

3.2.性能测试环境物理架构
说明本项目性能测试环境的物理架构,可以以物理架构图的方式。

3.3.性能测试环境与生产环境资源对比
说明本项目测试环境与生产环境的差异,确定性能测试环境的软硬件资源,包括待测系统各组成部分的配置。

下表供参考,非强制使用。

4.1.启动准则
描述开始执行测试的时机,下面准则供参考。

²测试实施方案评审通过。

²测试环境准备完毕,包括:
1.数据库安装并调试成功,并经过相应优化,初始数据量满足测试要求。

2.应用服务器安装成功,待测试版本已正确部署。

3.测试客户端机器到位,系统软件安装完毕。

4.网络配置正确,连接通畅,可以满足压力测试需求。

5.测试所需的存储到位。

6.其他环境资源就绪。

²待测交易的测试数据和测试脚本准备完毕。

²待测交易(流程)通过功能测试,版本稳定。

4.2.暂停/再启动准则
描述在什么情况下暂停/恢复全部或部分测试工作,下面准则供参考。

²测试中发现问题,需要项目组修改代码或更换版本;
²测试中发现服务规划及部署问题,需要重新调整部署方案;
²需要调整测试环境资源,如加减CPU数目,增加存储等等。

²测试环境受到干扰,比如服务器被临时征用,或服务器的其它使用会对测试结果造成干扰。

4.3.结束准则
描述测试结束的条件,有正常退出,也有非正常或意外的退出,下面准则
供参考。

²完成全部性能测试内容并提交测试报告;
²对验证测试的内容从测试外渠道获得权威的结论。

5.测试准备
5.1.测试环境安装
说明本次测试的测试环境安装情况。

5.2.测试工具
说明本次测试使用到的测试工具和监控工具。

5.3.测试脚本、数据及其预验证
说明本次测试的测试脚本、测试数据以及混合场景的交易配比情况等。

6.测试方法及案例设计
说明本次测试的测试方法(内容)及测试案例、测试场景设计。

下面章节
供参考。

6.1.基准测试
在测试环境经过确认,脚本预验证之后对本次测试涉及的全部联机交易做基准测试。

目的是验证测试脚本及后台环境、初步检查交易本身是否存在性能缺陷。

测试方法:
使用xx测试工具向xx服务器发送交易请求,接收并分析返回结果。

拟采用xx负载执行,取交易的平均响应时间作为衡量指标,并计算吞吐量
6.2.单交易负载测试
对本次测试涉及的全部联机交易完成基准测试后,分别执行单交易负载测试。

目的是获得交易本身的性能表现,诊断交易是否存在性能缺陷。

测试方法:
使用xx测试工具向xx服务器发送交易请求,接收并分析返回结果。

拟采用xx的负载执行,取交易的平均响应时间作为衡量指标,并计算吞吐量
6.3.混合场景性能测试
按照规划生产环境交易比例设置测试场景,在xx用户总并发的情况下测试业务的平均交易响应时间、吞吐下指标,监测应用服务器、数据库服务器的资源使用情况、交易正确率等。

测试方法:
在测试环境下,按照xx测试场景执行测试,在xx总并发用户数量的情况下,获得在不同测试环境参数(包括数据库配置参数,应用系统配置参数)下,系统性能表现的变化曲线。

6.4.连续运行稳定性测试
在测试环境下,长时间连续执行测试脚本,监测系统在连续运行情况下,系统资源的使用情况和处理性能的变化。

测试方法:
在测试环境下,按照xx的测试场景执行测试,在xx个总并发用户数量的情况下,连续执行测试脚本xx小时,记录系统的性能表现和资源开销。

7.测试输出
说明在测试完成后需要输出的阶段性成果,作为检验测试的衡量标准。

当测试完成以后,需提交的主要文档包括,但不仅限于:
²《xx项目性能测试实施方案》
²《xx性能测试脚本》
²《xx性能测试场景》
²《xx性能测试场景结果》
²《xx性能测试记录及问题跟踪表》
²《xx项目性能测试报告》
8.测试进度计划
在测试工作量估算数据的基础上,考虑现有的资源情况,对资源进行具体安排,根据项目整体进度计划,列出进度表,即是谁在什么时间内完成什么任务。

下表供参考,非强制使用。

9.测试实施风险
风险管理是对影响项目测试的各种可能发生的风险进行估计,以及对风险的发生几率和严重程度进行估计,并按照估计结果对风险进行排序。

以下的表格中已经列出了一些常见的风险和应对措施,可以根据项目的特性,对本表的内容进行增加、删除、修改和重新排序,并对预防措施进行细化。

规避风险的应对措施必须在本部分中有所体现。

下表供参考。

风险描述
风险
发生的可
能性

险对项
目的影

责任

规避方法
测试环境与运行环境差距
较大,通过测试得到的运行参数
偏差。

在试运行阶段需要重新进
行参数验证。

中低Xxxx
测试数据量和数据库中预
埋数据量较小,通过测试时间推
算的批量处理交易的运行时间
满足要求,生产环境下数据不能
满足。

中高Xxxx
由于发现较严重缺陷引发
较长时间的程序修改,或因环境
准备、数据等原因造成测试进度
延迟。

高中Xxxx。

相关主题