1、XXX项目 性能测试方案文 档 编 号保 密 等 级作 者 最终修改日期审 核 人最终审批日期批 准 人最终同意日期修订统计日期版本修订说明修订人1.0初稿目 录1项目介绍11.1测试目标11.2测试范围11.3性能测试指标要求21.3.1交易吞吐量21.3.2交易响应时间21.3.3并发交易成功率21.3.4资源使用指标22测试环境32.1网络拓扑图32.2软硬件配置33测试方案43.1交易选择43.2测试数据43.2.1参数数据43.2.2存量数据53.3资源监控指标53.3.1台式机53.3.2服务器53.4测试脚本编写和调试53.5测试场景设计53.5.1经典交易基准测试53.5.2经
2、典交易常规并发测试63.5.3稳定性测试73.6测试场景实施和数据搜集83.7性能优化和回归84测试实施情况94.1测试时间和地点94.2参与测试人员94.3测试工具94.4性能测试计划进度安排105专业术语111 项目介绍1.1 测试目标 经过对XXXXXX系统性能测试实施,在测试范围内能够达成以下目标: 了解XXX系统在多种业务场景下性能表现; 了解XXX业务系统稳定性; 经过多种业务场景测试实施,为系统调优提供数据参考; 经过性能测试发觉系统瓶颈,并进行优化。 预估系统业务容量1.2 测试范围XXX系统说明和系统业务介绍和需要测试业务模块,业务逻辑图以下:本企业服务器环境和架构图为了真实
3、反应XXXX系统本身处理能力,此次测试范围只包(XXX服务器系统和Web服务系统、数据库服务器系统)。1.3 性能测试指标要求此次性能测试需要测试性能指标包含: 1、交易吞吐量:后台主机每秒能够处理交易笔数(TPS)2、交易响应时间(3-5-8秒 )3、并发交易成功率99.999%4、资源使用指标:前置和关键系统各服务器CPU(80%)、内存占用率(80%)、Spotlighton数据库;LoadRunner压力负载机CPU占用率、内存占用率1.3.1 交易吞吐量依据统计数据,XXX系统目前生产环境高峰日交易总量为【】万笔。依据二八标准(80%交易量发生在20%时间段内),目前生产环境对主机交
4、易吞吐量指标要求为:TPS_1 【】 * 80% / (24 * 20% * 3600) = 【】 笔/秒为获取系统主机最大处理能力,在此次性能测试中可经过不停加压,让数据系统主机CPU利用率达成【】%,统计此时TPS值,作为新主机处理能力一个参考值。1.3.2 交易响应时间 此次性能测试中交易响应时间是指由性能测试工具统计和进行统计分析、系统处理交易响应时间,用一定时间段内统计平均值ART来表示。此次性能测试中,对全部交易ART指标要求为:ART 5 秒1.3.3 并发交易成功率指测试结束时成功交易数占总交易数比率。交易成功率越高,系统越稳定。对经典交易场景测试,要求其并发交易成功率 99.
5、999% 。1.3.4 资源使用指标在正常并发测试和批处理测试中,关键系统服务器主机资源使用指标要求:CPU使用率 80%内存使用率 80%2 测试环境2.1 网络拓扑图压力产生器(Load Generator)连接服务端系统,用户端发送请求到服务端,服务端响应并处理后将结果返回到用户端。此次测试网络环境为1000Mb ps局域网,使用独立网段,忽略防火墙网络延迟,交易请求和结果返回网络传输时间能够忽略不计。简图以下:企业网络传输拓扑结构图2.2 软硬件配置性能测试环境硬件和软件配置以下表所表示:环境资源数量配置和生产环境差异Web服务应用软件1服务器型号:CPU:4个主频 3.10Ghz内存
6、:8G存放:500GIP地址: 系统/版本:XXX服务器硬件环境数据库服务器1服务器型号:CPU:,主频 内存:存放:IP地址: 系统/版本:负载机Loadrunner1CPU:4个主频:2.4Ghz内存:2G存放:320IP:192.168.7.373 测试方案3.1 交易选择 经过业务数据统计和业务模型分析,最终选择经典交易以下表所表示:编号脚本名业务名业务占比可参数化域12345678910111213143.2 测试数据3.2.1 参数数据为了尽可能模拟系统生产环境,所以JVM初始堆栈大小、WEB服务器线程池、数据库连接池等系统配置,统一参考WAP生产环境配置。3.2.2 存量数据存量
7、数据来自XXXX实际生产系统,对生产数据进行脱敏处理,并导入测试环境关键系统数据库。基础数据数据规模。3.3 资源监控指标此次性能测试经过LoadRunner进行资源监控包含:操作系统UNIX、AIX资源监控。定义监控指标以下:3.3.1 台式机 系统CPU使用率 80% 系统内存使用率 80% 系统IO使用率 80%监控服务器包含WEB服务器。3.3.2 服务器 系统CPU使用率 80% 系统内存使用率 80% 系统IO使用率 80%监控服务器包含数据库服务器。3.4 测试脚本编写和调试3.5 测试场景设计3.5.1 经典交易基准测试经典交易基准测试是单交易单用户测试,目标是对选择每个经典交
8、易在无压力情况下(无额外进程运行并占用系统资源)情况下,获取系统处理单笔交易耗时,为下一步模拟多个用户、混合交易性能测试提供一个基础数据参考。基准测试要达成以下目标:l 验证测试脚本及测试参数正确性。l 获取系统处理单笔交易性能数据,关键是单笔交易平均响应时间。3.5.1.1 测试方法使用一个Vuser,分别运行每个经典交易脚本,设置脚本迭代次数1次,验证全部脚本是否运行正确、全部交易事务是否成功返回,并获取每个经典交易平均交易响应时间ART。3.5.1.2 测试场景-基准测试(测试单业务单人测试获取经典交易平均响应时间)编号场景名称并发用户数加压方法连续时间退出方法思索时间/迭代延迟交易组合
9、负载生成器数量备注1单交易单用户测试,获取各经典交易响应时间单用户交易数据234567893.5.2 经典交易常规并发测试单交易多用户并发测试对每个经典交易经过多个用户数次迭代实施,取得该交易在并发用户情况下平均响应时间和每秒响应交易数,同时检验服务器端对每个经典交易多个并发用户处理能力。3.5.2.1 测试方法对单交易多用户并发测试:使用手动场景,设置并发用户数35、45,连续时间15分钟,无思索时间,无迭代延迟。测试每个交易在不一样压力下应时间和每秒响应交易数量。从而发觉交易单点瓶颈,并针对问题进行优化。3.5.2.2 测试场景-用户并发测试(针对问题进行优化)编号场景名称并发用户数加压方
10、法连续时间退出方法思索时间/迭代延迟交易组合负载生成器数量备注1单交易多用户并发测试,获取交易响应时间,验证数据库/web服务器对各经典交易并发处理能力234567893.5.3 稳定性测试经过生产系统总用户数,模拟生产环境,考察在模拟生产环境情况下是否会出现宕机、响应时间变长、交易成功率下降、内存使用率连续上升等异常现象。3.5.3.1 测试方法经过基准测试得出交易响应时间,根据响应时间设置交易占比。然后不停施加压力,观察系统CPU使用率。来判定系统所能承受极限压力。再依据此压力并发数量,让场景连续运行时间8小时,各交易无思索时间、无迭代延迟时间。获取关键主机TPS值、各经典交易平均响应时间
11、ART和性能监控数据。3.5.3.2 测试场景-稳定性测试在系统资源使用抵达极限时长时间压力测试场景编号场景名称并发用户数加压方法连续时间退出方法思索时间/迭代延迟交易组合负载生成器数量备注13.6 测试场景实施和数据搜集性能测试实施过程中应搜集测试场景实施结果数据包含:l LoadRunnerController中场景实施结果数据;l LoadRunner资源监控数据;l 关键主机统计资源(CPU、MEM)监控数据文件。3.7 性能优化和回归版本Tomcat应用数据库结果其它V1.01、默认配置1、V1.0版本应用1、V1.0版本数据库1、对应时间:X秒2、并发用户:X1、应用程序稳定2、数
12、据库服务器稳定3、查看对应结果在并发测试数据中4 测试实施情况4.1 测试时间和地点时间:XXXX年 XX月XX 日 XXXX年 XX 月 XX 日地点:XXXXXXXXXXXXXXX 4.2 参与测试人员参与此次关键系统主机升级性能测试人员包含:1. 项目经理: XXXXXX2. 测试责任人: XXXXXX3. 测试人员:XXXXXX4. 运维人员: XXXXX、XXXX序号角色数量需求具体职责技能要求1性能测试经理1部门经理2性能测试设计人员1性能测试工程师3测试工具开发人员1性能测试工程师4测试环境准备人员1性能测试工程师5测试数据准备人员1相关项目配合人员6脚本场景准备人员1性能测试工
13、程师7性能调优支持人员1性能测试工程师4.3 测试工具序号工具名称用途及说明厂商/自产版本1Loadrunner负载生成hpV 8.1/V11.0注意:Loadrunnet用户方是否含有lisence,如含有正版lisence更佳。其它工具为开源或无偿软件。4.4 性能测试计划进度安排阶段编号任务工作量(人日)开始日期结束日期责任人测试计划1制订 测试方案2评审测试方案测试准备3测试工具准备4测试环境准备5测试数据准备6测试脚本编制、调试7测试场景准备测试实施8测试实施(基准测试)9测试实施(并发测试)代码优化:假如测出结果没有达成要求,需要调优时间不定10测试实施(基准测试)11测试实施(并发测试)12测试实施(稳定性测试)测试评定14编写测试汇报15评审测试汇报在实际测试过程中,因为测试环境有时不太稳定、和功效测试共用测试环境和测试场景实施犯错需反复测试等原因,实际进度可能会稍有推迟。5 专业术语序号全名名称简写描述1Running VuserVUser用户总数2Transaction per secondTPS每秒经过事务数3Hits per SecondHPS每秒事物点击数4AverageTransaction Response TimeART每秒事物响应时间