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