性能测试方案设计实用模板文档格式.docx
- 文档编号:22447581
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:22
- 大小:121.26KB
性能测试方案设计实用模板文档格式.docx
《性能测试方案设计实用模板文档格式.docx》由会员分享,可在线阅读,更多相关《性能测试方案设计实用模板文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
●项目名称
中文名称:
英文名称:
●项目涉及的现有系统:
2.2系统架构
2.2.1架构概述
XXX系统为C/S(Client/Server)结构还是B/S(Browser/Server)结构,为哪一类型客户提供什么样的服务,目前支持web浏览器,除web浏览器外的还有哪些渠道。
可附上系统的总体架构图,具体可参考系统架构设计文档。
2.2.2运行环境
表1软件环境
软件组成
名称
操作系统
中间件
数据库
Java运行平台
表2硬件组成环境:
硬件组成
WEB服务器
应用服务器
数据采集服务器
主数据库服务器
接入应用服务器
2.2.3处理流程
有关XXX系统核心或非核心相关交易处理流程请参见《XXX系统项目技术方案.doc》
如有相关流程图也可附上。
2.3技术方案设计
例:
未来拓展后的系统和现有系统部署在同一个服务器,具体的实施方案:
A、未来扩展后的系统运营顺利现有系统逐步下线
B、未来扩展后的系统运营未能如期完成,现有系统的将继续运营
详细可参考系统的总体设计方案
简要描述项目背景,系统架构、关键技术及主要特点,以帮助有效理解项目的测试目标。
3测试目标
本次性能测试的目的如下:
获取XXX系统的各项处理能力指标,以验证系统是否满足设计要求
找出XXX系统有可能存在的性能问题或性能瓶颈
XXX系统的性能设计要求如下:
每秒处理交易(TPS):
不低于XX笔/秒
交易平均响应时间:
不高于3秒
交易成功率:
不低于99.9%
服务器CPU:
平均利用率不高于60%,瞬时峰值不高于75%
服务器MEM:
平均利用率不高于80%,不存在内存泄漏的问题
服务器I/O:
不存在I/O瓶颈
网络流量:
网络带宽平均利用率不高于50%,不存在网络带宽瓶颈
####性能设计要求待确认
4测试范围
4.1测试对象
本次性能测试的对象为XXX系统的前端展现和XX接口及其它业务系统。
具体包括:
前端展现
XX接口
……
4.2需要测试的特性
需要测试的特性主要为体现系统处理能力的各项指标,包括:
每秒处理交易数(TPS)
交易的平均响应时间、90%响应时间
交易成功率
服务器的CPU、MEM利用率
服务器的磁盘I/O情况
网络流量
此外,本次性能测试还需要考虑系统在长时间运行情况下的稳定性。
4.3不需要测试的特性
不需要测试的特性包括:
业务流程的合理性、正确性
系统易用性、可管理性
界面可用性
及其它不属于性能测试范畴的内容
54.测试启动/结束/暂停/再启动准则
5.1启动准则
测试方案审批通过
各项测试准备工作完成,并得到确认
测试人员、配合人员到位
5.2结束准则
测试方案中的所有测试场景已测试完毕,完成预期的测试目标,测试报告审批通过
按照客户要求,提前结束测试
5.3暂停准则
测试中发现问题,需要项目组修改代码或者进行其它调整
测试环境受到干扰,比如服务器被临时征用,或服务器的其它使用会对测试结果造成干扰
测试资源出现问题,比如测试环境需要调整CPU、磁盘等,或者测试人员或者配合人员被临时征用
按照客户要求,暂停测试
5.4再启动准则
测试中发现的问题得到解决
测试环境恢复正常
测试资源问题得到解决
按照客户要求,重新启动测试
6测试人员
姓名
角色
工作内容
备注
项目总监
协调测试资源
项目经理
架构师
辅助完成性能测试工作,分析解决测试中发现的问题
性能测试组长
领导完成性能测试工作
性能测试人员
完成测试准备、环境部署、测试执行等性能测试工作
完成脚本录制、数据准备、测试监控、测试执行、结果分析等性能测试工作
开发组长
辅助解决测试过程中出现的如版本部署、模拟程序等问题
7测试时间
阶段/工作项
开始时间
结束时间
了解需求,设计测试方案
提出测试环境需求,准备硬件环境
部署测试版本,准备测试脚本、测试数据、模拟程序
测试执行,测试结果收集和分析
编写测试报告
8测试环境
8.1系统架构图
8.2测试环境逻辑架构图
8.3测试环境物理架构图
8.4环境配置列表
8.4.1生产环境
硬件配置如下:
序号
服务器名称
数量
CPU
内存
文件系统
1
2
模拟器(包括应用服务器、子系统应用服务器)
软件配置如下:
软件名称
基础环境
8.4.2测试环境
8.4.3环境差异分析
生产环境和测试环境在硬件配置上的差异如下:
✧
生产环境和测试环境在软件配置上的差异如下:
生产环境和测试环境在软硬件配置上的差异,对测试结果有可能存在如下影响:
8.4.4测试客户机
客户机
用途说明
硬件配置
软件配置
8.5测试工具
说明本次测试,采用什么作为压力发起工具,如LoadRunner、JMeter等。
测试期间,采用LoadRunner工具软件监控和收集被测交易执行性能的数据,使用开放平台监控工具软件nmon收集linux操作系统资源使用情况的数据,使用Spotlightonwindows监控软件监控sql2005数据库资源使用情况,使用AWR收集Oracle数据库执行信息。
9测试策略
简述本次测测试环境优缺点,根据其优点取典型事例去设计测试手段规避某些存在重大缺陷的功能模块或业务系统。
本次性能测试将安排为两轮:
第一轮:
仅针对前端展现进行测试。
第二轮:
针对前端展现+XX接口进行测试。
考虑后期项目系统很可能有拓展和优化,可以根据实际情况增加或减少测试次数。
10测试场景设计
10.1总体设计思路
本次测试的对象XXX系统的前端展现和XX接口,重点关注前端展现。
在设计测试场景时,将按照如下的思路进行:
第一,选择典型交易,获取单交易及混合交易下的性能表现;
同时,为验证系统能够长时间稳定运行,将采用混合交易场景,运行一个8小时的稳定性测试,以验证系统能否满足设计要求。
第二,采用缓存技术,在客户端缓存部分页面信息,以减少网络流量和对某应用、数据库、中间件服务器的访问次数。
需要做一个有/无缓存的比对测试,以确定有/无使用缓存对系统性能的影响。
第三,用户在首次访问及无缓存的情况下,需要从Web服务器下载大量的脚本等页面对象,这些需要下载的数据如果占用过多的网络带宽,会造成交易的响应时间过长,因此,需要做一个模拟不同网络带宽的比对测试。
10.2业务模型
混合场景采用的业务模型如下表所示:
业务交易名称
目标TPS(笔/秒)
01_XXX
02_XXX
3
03_XXX
…
…
10.3测试场景设计
10.3.1单交易负载测试
单交易负载测试的目的在于验证单交易是否存在并发问题,并获取单交易的性能表现。
针对每一支交易,先进行5个并发用户的并发测试,验证交易是否存在并发问题。
如果没有问题,则采用递增并发用户的方式发起压力,比如,100并发、200并发、300并发、……,直到系统出现性能拐点或者交易的TPS超过目标TPS的3倍。
单交易负载测试场景如下表所示:
测试场景名称
测试目的
优先级
单交易01_XXX
测试单个交易的性能表现
高
单交易02_XXX
单交易03_XXX
10.3.2混合交易负载测试
混合交易负载测试采用“10.2业务模型”章节定义的业务模型。
采用递增并发用户的方式发起压力,比如,500并发、1000并发、1500并发、……,直到系统出现性能拐点。
(可在执行过程中根据实际情况进行调整)
混合交易负载测试场景如下表所示:
混合交易01_负载测试
采用混合交易模拟生产环境下的业务情况,以获取系统最大的处理能力
10.3.3稳定性测试
稳定性测试采用与混合交易负载测试完全相同的业务模型。
采用混合交易负载测试场景下测试出的系统最大处理能力时的并发用户数*80%发起压力,运行8小时。
稳定性测试场景如下表所示:
混合交易02_稳定性测试
采用混合交易模拟生产环境下的业务情况,连续运行8小时,以验证系统的稳定性
中
10.3.4有/无缓存比对测试
有/无缓存比对测试采用与混合交易负载测试完全相同的业务模型。
采用混合交易负载测试场景下测试出的系统最大处理能力时的并发用户数*50%发起压力,运行20分钟。
有/无缓存比对测试场景如下表所示:
缓存比对01_无缓存
获取无缓存情况下,系统的性能表现
缓存比对02_50%缓存
获取50%缓存情况下,系统的性能表现
缓存比对03_100%缓存
获取100%缓存情况下,系统的性能表现
10.3.5网络带宽模拟测试
网络带宽模拟测试采用与混合交易负载测试完全相同的业务模型。
网络带宽模拟测试场景如下表所示:
网络带宽01_1M带宽
模拟1M网络带宽,获取系统的性能表现
网络带宽02_2M带宽
模拟2M网络带宽,系统的性能表现
网络带宽03_100M带宽
模拟100M网络带宽,系统的性能表现
11测试实施准备
11.1测试环境准备
在测试执行之前,需要按照测试环境的规划安装好相关的各种软件,包括操作系统、应用软件、数据库软件等,并且按照规划配置好相关的各项参数,包括操作系统参数、应用软件参数、日志级别、数据库参数、负载均衡设备策略、RAC(RealApplicationCluster,真正应用集群)是Oracle9i数据库中采用的一项新技术,也是Oracle数据库支持网格计算环境的核心技术。
策略等,并且预先按照设计要求完成对数据库的规划,比如表空间、索引、物化视图、表分区等。
在测试执行之前,需要准备好测试用机。
可根据以下条目逐项执行:
项目
条目
是否完成
基础环境准备
硬件设备是否已经到位
网络环境是否已经准备好
操作系统是否已经安装和设置
数据库环境是否已经准备好
应用是否已经安装
数据准备
数据库中的数据是否已经设置
是否已经准备数据导入和清除脚本
测试工具准备
是否已经安装测试工具
负载机上的代理是否已经安装
应用服务器上的代理是否已经安装
监控分析工具是否已经安装
11.2测试脚本录制
XXX系统实时接口采用什么样的传输方式,根据这个传输方式去选择脚本协议。
根据测试场景中确定的交易,在测试环境中录制脚本,并且调试通过。
11.3测试工具准备
LoadRunner、JMeter等
性能测试发起工具
Nmon、Spotlightonwindows、AWR等
各服务器、数据库监控工具
11.4测试人员准备
在测试过程中,需要协调如下人员到位:
总体协调人
测试执行人员
测试监控人员
架构设计人员:
在设计测试方案、测试准备、测试执行、测试结果分析时提供帮助
开发人员:
在录制脚本、准备测试数据时提供帮助
DBA:
发现数据库问题,数据库调优
网络维护人员/系统工程师:
在执行期间,当出现问题时,帮助定位问题产生原因,及解决问题
相关接口系统配合人员:
在测试执行时进行配合
12测试进度计划
测试进度计划如下表所示:
阶段
主要任务列表
W1
W2
W3
W4
W5
W6
W7
W8
W9
测试计划
确认测试目标及范围
系统环境及业务场景调研
测试计划与方案设计
测试方案跨部门沟通
测试方案确认
测试准备
测试环境准备
测试脚本准备
基础数据准备
测试数据准备
测试监控准备
挡板程序准备
测试人员准备
测试执行
测试准入检查
单场景压测
综合场景压测
测试报告
调优
调优和复测
13风险分析
编号
风险描述
发生可能性
影响
规避措施
责任人
测试需求:
性能测试需求不明确造成测试理解偏差,影响最终测试结果
与客户加强交流,并形成书面文档,逐步引导达成一致
性能组
业务模型:
测试模型与上线后实际业务不一致,导致测试结果难以体现实际上线后的效果
参考现有系统的历史业务量,与业务部门、开发方共同协商讨论,尽量缩小偏差
测试环境:
无法与生产环境相一致,比如接口相关,外联的其他系统无法搭建,导致某些业务无法模拟,影响测试结果真实性
对环境问题导致的无法模拟的业务占比采用别的业务替代,同时对某些发起渠道的交易进行压力补偿,并评估产生的影响
性能组、PM
4
工作配合:
因跨部门多方协做,测试、监控、维护人员配合协调不一致,会造成工作量和测试进度上的延误
制定详细的测试工作计划和一个沟通方式,让测试、监控、维护人员明确各自职责
5
测试数据:
测试数据不正确,将导致业务逻辑出错
测试数据量不能达到实际生产环境的数据量,将导致无法产生足够的压力导致测试结果不准确
在正式进行测试之前,应试运行测试数据,以验证数据的正确性
分析生产环境的预期数据量,采用工具准备相近数量的测试数据
性能组、开发组
6
测试执行:
测试场景很多,在计划的时间内可能无法全部执行
给每个测试场景设定优先级,先执行优先级高的测试场景,保证优先级高的测试场景能全部执行完成
制定详细的测试执行计划,合理安排测试时间
14前提和假设
在测试过程中,如果发现性能问题或性能瓶颈,项目组有相应的技术人员可以解决或者进行调优
文档结束
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 性能 测试 方案设计 实用 模板