测试验收方案一、简介本方案分为六大部分来阐述整个测试验收方案,各部分既独立成一个整体,又互相关联,从计划、安排到具体阶段实施既有总体上的原则和方法指导,又有详细的测试方法和测试方案进行实际测试工作的指导。
主要分为以下部分:项目测试流程:对测试验收进行整体的测试时间、计划安排;项目验收测试总体计划:按照招标文件要求、软件工程理论,对软件进行迭代式的开发测试,每个开发阶段都有开发FAT和FAT验收测试,每个实施阶段都有SAT验收测试,第三部分测试总体计划中,对于软件开发周期中的各阶段从测试方法论的角度对FAT测试与SAT测试进行了指导。
为避免文章中的不必要内容重复,具体可操作方案请见随后的“工厂验收测试方案”与“现场验收测试方案”相关章节;工厂验收测试方案与现场验收测试方案:从可操作的角度对软件周期各阶段的FAT、SAT测试进行详细的技术说明,各阶段FAT、SAT根据该阶段测试不同灵活运用该指导方案中测试方法和操作。
ﻩ文档测试:对于各阶段产生的文档进行验收。
二、项目测试流程(一)整体流程福建电力FMIS系统测试贯穿于项目的始终,是项目质量保证体系的重要环节,远光公司已经建立起基于IEC91868/ 91868、ISO 9000和IBM Rational RUP2000标准的质量保障体系,制定和执行了质量保障规范体系。
参考国际标准和IBM Rational RUP2000软件工程的测试流程,依据招标文件的要求,制定福建电力FMIS系统的整体测试工作流程,用于指导项目的测试和质量检查。
流程说明:1)测试流程是福建电力FMIS总体实施流程的一个子集,贯穿于三个实施阶段之中;2)项目第一实施阶段的测试流程首先通过系统分析和设计文档获取测试需求,针对第一实施阶段的开发目标制定二次开发FAT测试方案,第一阶段开发测试方案将依据本方案的FAT测试方案规范和要求进行细化。
3)执行测试方案,并提交测试报告;4)对测试报告进行评估和审核,不能通过时,项目实施进入开发流程系统进行开发和优化,否则,进行下一步实施工作流程。
5)项目上线前,需要进行本阶段的FAT测试;6)接着进行本阶段的项目SA T测试;7)第二阶段、第三阶段的测试流程与第一阶段的测试流程相同,只是测试的内容不同。
8)最后进入系统的整体现场验收测试阶段。
整体项目测试流程如下图:三、项目验收测试总体计划福建电力FMIS系统测试总体计划是实施项目总体计划的一部分,分别在每个一个实施阶段二次开发任务完成时执行FAT测试计划,系统准备运行阶段进行本阶段的FAT测试,在系统阶段FAT测试之后,三个月内进行现场验收(SAT)测试。
第二、第三阶段执行类似的测试活动,最后执行整体现场验收测试活动,总体计划如下:(一)组织机构及人员保障远光软件公司成立了专门的测试部门,现有测试经理、测试设计师和测试工程师30余人,专门负责远光电力FMIS实施项目的测试工作,远光公司承诺成立专门的测试小组负责福建电力FMIS项目的所有测试活动。
同样承诺,针对福建电力FMIS的专门测试小组委派具有丰富经验的测试经理和设计、测试工程师参加,测试组织机构与项目实施组织机构并行,测试组织机构描述如下:(二)整体现场验收测试(1)、测试目的对全省已经完成实施的财务管理信息系统进行综合性能鉴定和验收。
此次测试的主要目的是全面验收全省范围内系统之间的互连和相互之间的数据支持能力,检验各系统与省公司系统之间的集成与互连的能力,各系统互连状态下正常运行的能力,集团范围内全面完成财务与业务一体化的财务管理信息系统的应用布署状态和性能。
(2)、测试时间在第三阶段整体验收完成后,81 工作日之后执行本整体验收计划(假如于2009年1月27日正常完成验收,执行本计划的时间是2009年5月19日)。
(3)、测试地点福建省电力公司及其下属所有实施软件系统的单位。
(4)、测试人员供方选派测试经理1人,测试项目组成员15人负责本次SAT测试,需方根据各实施地具体情况指派具体人员参与和配合整个SAT测试过程,人员由需方自行决定。
供方项目组成员具体分工与职责见下表:(5)、测试内容现阶段的SAT测试主要对当前各地实施的分系统及与总公司进行各方面的功能与性能测试,测试涉及软件系统的功能测试、性能测试、兼容性测试、安全性测试和介质检查。
功能测试主要包括:基础架构测试、软件的功能测评、异常处理测试及接口测试几方面;性能测试主要包括:稳定性测试、压力(并发)测试等;兼容性测试包括各种系统环境的组合测试;安全性测试则包括系统应用涉及到的各种安全措施;介质检查主要针对软件系统中提到的相关外部工具进行检查和功能测试。
(6)、测试环境测试在需方各实施地实际运行环境上进行,数据均使用需方真实数据,具体各实施地软硬件环境配置如下表所示:(7)、测试方法软件功能测试采用黑盒测试,主要依赖于资深业务人员的手工测试以及专业判断评定;性能测试主要采用性能测试工具如LoadRunner等进行,利用工具本身所提供的功能对各种需要获取的性能指标和参数进行测评;兼容性测试主要依赖于软件和硬件的专业人员的专业部署与评定;安全性测试依赖于专业网络人员采用各种手段和一些网络工具针对软件安全的应用方面和网络方面进行测试评定;介质检查主要依赖于测试人员专业的判断和审查。
(8)、测试流程测试流程严格按照以下流程执行:测试案例的执行-->填写问题表-->问题表处理-->系统升级-->回归测试。
(9)、测试成果测试完成后提交本阶段SAT测试报告以及测试流程中涉及到的相关表格文件,并由双方负责人签署项目验收报告,以供文档评测。
本阶段成果具体如下:《项目整体SAT测试工作计划表》《项目整体SAT测试用例表》《项目整体SAT问题记录汇总表》《项目整体SAT问题处理汇总表》《项目整体SAT问题确认汇总表》ﻩ《项目整体SAT测试报告》其中《项目整体SAT测试工作计划表》和《项目整体SAT测试报告》将提交项目委员会审批和备案。
四、工厂验收测试方案工厂验收测试涉及到软件系统功能、性能、兼容性、安全性等测试的各个方面,工厂测试方案中对于测试过程中需要关注的测试项、测试方法及测试结果等都作了详细设计和说明。
方案结构按照功能、性能、及其他测试点等项目来组织。
(一)功能测试方面1、基础架构测试(1)、系统架构要求应用系统采用三层或多层体系结构,三层或多层体系结构具体划分为:客户层、中间层(可进一步划分为两层或两层以上)、数据层。
系统体系架构采用J2EE解决方案。
系统由数据平台、中间件平台、应用软件和其他支撑软件四大部分组成,可以从软件真实部署的局域网网络拓扑图检验软件体系架构。
系统软件是汉化的,与系统配套的各种管理软件和诊断软件配备完整,以功能测试的方式对此进行测试和检验,对此方案中有具体的测试安排。
系统数据平台采用Oracle9i。
系统所有由供方配置的第三方软件在研究系统中稳定运行,可以从操作系统的功能中对此进行查看检验。
(2)、数据平台要求通过软件的应用平台,对各种功能的正确操作检验应用平台产生的数据与真实预期数据进行比对校验,验证其正确性和准确性。
具体可以参照具体软件功能评测安排进行测试。
(3)、中间件平台要求查看中间件服务器平台,是否符合标书要求的中间件平台要求。
(4)、数据库设计要求参考提供的数据库设计文档查看实际数据库系统是否符合。
2、应用软件功能测试系统基本业务功能随着项目实施推广的深化也逐渐增多,系统集成的功能模块也越来越多,下表给出的基本业务功能包含了全部系统的业务功能点,其测试重点和关注点也一一进3、异常处理测试核查系统发生异常状况时软件是否能够正确处理,如网络故障(切断网络连接)、主机故障(服务器断电/down机)、用户操作出错等。
为了保证系统能够正确持久运行,必须对数据和系统进行完整性检查、故障转移和恢复测试等等措施,用以确保系统能成功完成转移,并能从导致意外数据损失或数据完整性破坏的各种硬件、软件或网络故障中恢复。
故障转移测试可确保:对于必须持续运行的系统,一旦发生故障,备用系统就将不失时机地“顶替”发生故障的系统,以避免丢失任何数据或事务。
恢复测试是一种对抗性的测试过程。
在这种测试中,将把应用程序或系统置于极端的条件下(或者是模拟的极端条件下),以产生故障(例如设备输入/输出(I/O)故障或无效的数据库指针和关键字)。
然后调用恢复进程并监测和检查应用程序和系统,核实应用程序或系统和数据已得到了正确的恢复。
(二)性能测试方面以下所有的性能测试项目均使用Mercury Interactive公司的LoadRunner 等一系列专业测试工具。
MI公司在业界拥有良好的评价,IDC2005年市场统计数字显示MI公司的产品占据软件测试工具市场份额的50%以上。
1、稳定性测试为了考验系统的稳定性,要进行连续72小时的稳定性测试。
运行环境在不超过软件指定的负载指标要求下,正常无故障地连续运行72小时,不发生关键功能重启动,不发生系统中断。
在稳定性测试进行期间,用户在任何阶段都可以对系统提供的各种功能要求进行正常操作和信息转储。
为了实现连续操作以达到考验系统稳定性的效果,利用自动化回归测试工具真实模拟用2、压力(并发)测试(1)、测试方法和步骤a.在一台或若干台机器上虚拟出最大在线用户数量的IP地址b.使用LoadRunner 模拟出最大用户在线,每个虚拟用户使用一个虚拟IP ,模仿出最大用户同时在线操作c.LoadRunner中设置并发的人数和时间,可以设置一定数量并发用户在某一操作点并发d.虚拟用户和并发用户在LoadRunner虚拟机中完成性能测试e.涉及到并发和稳定性操作均采用自动化工具进行模拟,更加贴近真实操作环境。
(2)、系统容量测试容量测试使系统处理大量的数据,以确定是否达到了将使软件发生故障的极限。
容量测试还将确定系统在给定时间内能够持续处理的最大负载或工作量。
例如,如果系统正在为生成一份报表而处理一组数据库记录,那么容量测试就会使用一个大型的测试数据库。
检验该软件是否正常运行并生成了正确的报表。
(3)、系统负载测试在这种测试中,将使系统承担不同的工作量,以评测和评估系统在不同工作量条件下的性能行为,以及持续正常运行的能力。
负载测试的目标是确定并确保系统在超出最大预期工作量的情况下仍能正常运行。
此外,负载测试还要评估性能特征,例如,响应时间、事务处理速率和其他与时间相关的方面。
为了实现系统的多用户负载操作,利用自动化测试工具模拟多台计算机对软件进行多用户负载条件下的测试,工具进行测试避免了人为失误,更能体现软件的负载性能。
[注:以下所说的事务是指“逻辑业务事务”。
这种事务被定义为将由系统的某个最终需方现实使用的是集群环境,现有测试环境不具备这种条件,所有的测试性能需要进行一定的换算才能反映出真实使用环境的负载性能。