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