应用系统测试方案.docx
《应用系统测试方案.docx》由会员分享,可在线阅读,更多相关《应用系统测试方案.docx(15页珍藏版)》请在冰豆网上搜索。
应用系统测试方案
验收测试方案
中国软件评测中心
二〇〇九年三月
第一部分测试计划
1.1项目目的
验收测试的主要目的是为信息系统工程项目提供质量保证,它是确保项目成功和双方利益重要手段,保证系统质量和可靠性的关键步骤,是对系统开发过程中的系统分析系统设计和实施的最后复查。
在验收测试中,第三方专业评测机构按照GBT17544《软件包质量测试和要求》以及用户需求,站在中立的地位,对信息系统工程项目进行全面验收评估,形成《验收测试报告》并提交双方确认。
通过系统、专业的验收测试,评估软件系统对设计需求的符合性,功能实现的正确性以及运行安全和性能的可靠性,全面保障信息系统工程质量。
中国软件评测中心作为中国最权威的第三方专业软件评测机构,在软件和应用系统测试领域具有丰富的经验,成功地承担了国家部委、地方政府部分以及相关行业的测试项目。
对信息系统建设质量进行严格把关,为推动政府信息化事业发展贡献最大的力量。
在信息化系统建设过程中,中国软件评测中心具有广泛行业背景、丰富测试经验、完善测试资源等优势。
中国软件评测中心希望能够将成熟的团队和丰富的测试经验用于本次项目中,为XXXX项目服务。
1.2项目原则
为达到项目组织与实施的严谨性、严密性和严肃性,做到委托方、第三方测试机构、开发商、系统集成商、应用系统使用单位等多方的满意,项目应遵循如下原则开展:
1)严谨、客观、公正、公平、公开;
2)标准统一、规则统一、减少人为干预;
3)以事实为依据、实事求是,量化客观,减少主观评判;
4)委托方、第三方测试机构组织、开发商配合。
为了达到上述目的,中国软件评测中心将在下述原则之下开展工作:
1)委托原则:
中国软件评测中心与委托方签订书面的本项目测试委托合同,开展本项目的测试工作;
2)独立公正原则:
中国软件评测中心将公正、独立、自主地开展测试工作,竭诚为委托方服务,不受其他任何第三方的干扰;
3)依法原则:
中国软件评测中心的测试活动应符合国家现行的有关强制性标准、规范和规定;
4)回避原则:
中国软件评测中心不从事与本项目有关的其他任何业务,作为公正、独立的第三方测试机构,对本项目的开发商在业务上以及核心技术上不构成竞争关系,并且一旦中国软件评测中心承担测试工作,将不直接与任何参测企业有任何直接联系;
5)保密原则:
中国软件评测中心对在测试过程中所涉及的有关本项目财务以及技术方案等方面的资料严格保密。
1.3依据标准
1.3.1用户文档
•《
•《
1.3.2测试技术标准规范
⏹GB/T17544-1998信息技术软件包质量要求和测试
⏹GB/T16260-2006软件工程产品质量
⏹GB/T18905-2002软件工程产品评价
⏹GB/T8567-2006计算机软件文档编制规范
⏹CSTCJSBZ02应用软件产品测试规范
⏹CSTCJSBZ03软件产品测试评分标准
1.4项目组织
1.4.1项目特点分析
1)为了配合委托方的工作,评测中心承担相关项目的测试工作将在测试管理中重点考虑测试时间和测试质量的结合,将根据验收测评服务协议中的要求,按时完成测试任务,合理调整投入的人力资源,同时合理安排测试工作时间,做到优质高效。
2)为了保证委托方项目的建设质量,测试质量无疑是测试工作的重点,为了保证测试质量,评测中心针对该项目成立了质量控制组和项目监督组,负责测试过程中的质量监督工作。
3)在本次项目测试工作过程中需要委托方、监理方、开发方和测试方的共同参与,项目的协调和工作的配合很重要,为此评测中心将配备经验丰富的项目经理管理和协调该项目。
4)本次测试为了更加满足业务需要,测试人员将严格按照需求进行测试,并对开发方和测试方有争议的问题提交委托方,进行最后需求确认。
5)根据深圳博物馆新馆数字化博物馆项目的重要性和特殊性,充分考虑到项目的特点,中心将投入相关经验的测试工程师,提高测试组的整体实力。
1.4.2项目组织
1)中国软件评测中心在接受该项目的测试委托任务后,将成立专门的测试项目组负责相关的测试工作。
该项目组采用项目经理负责制,项目经理直接接受中国软件评测中心测试中心主任的领导,并接受科技质量部的质量监督和审查;
2)项目经理接受委托方的监督,负责整个项目的测试过程进度、质量控制,负责协调安排测试资源,负责向委托方领导和评测中心领导汇报测试情况;
3)项目经理下设功能测试组、性能测试组、文档工作组以及质量控制组:
⏹功能测试组:
负责该应用系统的功能、安全可靠性、易用性、兼容性、用户文档等质量特性测试,并对项目经理负责;
⏹性能测试组:
负责系统的负载压力性能测试,并对项目经理负责;
⏹文档工作组:
负责本项目测试过程中,所有测试文档的管理、控制和审核等;
⏹质量监督组:
负责本项目测试过程中的测试质量监督和检查,直接对测试项目经理负责,并受科技质量部的指导,有权停止测试,并对出现的质量问题的纠正提供建议。
1.4.3项目实施过程
1)项目组与委托单位进行详细的测试需求沟通,确定具体的测试需求;
2)项目组根据测试需求制定相应的测试方案和测试实施规范;
3)测试实施规范由项目经理组织相关人员进行技术评审;
4)评审通过后,项目组进行测试环境配置或确认工作;
5)测试环境确认后,项目组开始实施具体测试工作,并负责测试结果的确认工作,测试结束后项目组形成初步测试问题单;
6)项目经理组织质量监督员及必要的技术人员对初步问题报告单进行审核,出现错误要求测试工程师进行重测或补测;
7)开发单位根据项目组提交的测试问题单进行被测软件的修改工作;
8)项目组对修改后的产品进行回归测试,并根据回归测试情况出具初步的测试报告,提交评测中心质量总监进行审核;
9)质量总监审核结束后,项目组出具并提交产品最终测试报告。
1.4.4人员投入
根据目前本项目实际情况,我们拟在数字化博物项目中包含的文化遗产数据中心、文化遗产数字化采集系统、多媒体展示与观众服务系统、深圳博物馆网站系统、藏品综合业务管理系统、专业数字化系统、行政办公自动化系统、数字博物馆综合管理系统等八大应用系统的分别组织测试人员进行验收测试,并在单个系统测试中预计投入以下人员(具体实施时人员可根据项目情况进行调整):
人员名称
数量
所属
备注
项目经理
1
项目经理
功能测试工程师
2
功能测试组
性能测试工程师
1
性能测试组
质量监督人员
1
质量监督组
质量总监
1
科技质量部
1.4.5项目周期计划
根据本次测试的情况分析,本项目预计包括8个应用信息系统,每个系统的验收测试按照以下阶段进行,时间安排大致如下:
工作内容
时间(工作日)
制定测试方案、测试规范制定
2
测试环境确认和配置、测试实施
10
提交测试报告
3
单系统测试合计
15
项目测试总计
120
1.5测试评估
1.5.1性能测试评估
确定在系统交易高峰期与日常业务运行期间各项指标值是否满足需求,主要指标包括:
•系统并发用户数;
•系统服务器处理请求的能力;
•系统交易平均响应时间;
•中间件资源使用;
•数据库资源使用。
1.5.2其它测试项测试评估
软件功能测试中,将软件出现的问题划分为三个等级:
严重、一般、建议。
具体说明如下:
1)严重。
软件出现以下现象的问题为严重错误:
——应用程序造成系统死机;
——应用程序崩溃或出现异常退出;
——应用程序无响应(5分钟(含)以上);
——应用程序造成用户数据不能保存、保存后丢失或毁坏;
——不能正确实现用户数据的新增、修改及删除功能;
——不能正确实现系统维护、流程配置、数据字典管理等系统管理功能;
——不能正确实现用户权限控制;
——软件功能实现不正确,导致业务流程无法实现;
2)一般。
软件出现以下现象的问题为一般错误:
——功能实现不正确,但未导致该功能完全不能实现、业务流程无法流转或流转错误;
——软件出现界面错误或错别字信息;
——软件给出的错误提示信息是错误或不明确的;
——未对应有的业务逻辑关系进行校验;
——出现偶发故障,且未导致数据丢失、毁坏;
——对用户进行不合理或不必要的操作限制;
——未提供用户文档或用户文档出现错误;
——除严重和建议问题外的其他问题。
3)建议。
软件出现以下现象的问题为建议改进错误:
——已经实现《规范》的功能要求,但使用不方便。
1.6测试配合
Ø测试方主要工作
•编写测试方案和测试规范;
•协助委托方确定测试环境;
•实施测试,提交测试问题单;
•回归测试、出具最终测试报告。
Ø委托方主要工作
•提供关于系统业务流程、系统需求、软件使用手册等方面技术支持;
•提高或者搭建必要的测试环境;
•对测试问题报告中提到的问题进行解释和逐一确认;
•当系统出现异常时,协助恢复系统。
1.7项目输出成果
1、软件测试方案
软件测试方案指在正式测试实施开始前,对软件测试项目所作的一个测试计划和执行方案,主要包括测试目的、评测依据、评测管理、评测内容及方法、测试配合要求、测试结果、测试环境要求以及项目输出成果等。
2、测试问题报告
测试问题报告指在测试实施完成后,测试工作组提交的一个软件缺陷报告。
主要内容包括问题的严重等级、问题产生的详细操作过程及结果描述等。
3、软件测试报告
软件测试报告是由测试工作组提交的最终测试结果报告,主要内容包括对软件功能及其它质量特性的综合评价、测试要求的各项质量特性的具体等级评分、详细测试结果描述以及软件的测试环境描述等。
1.8测试报价
根据目前本类型项目测试的有关要求,结合本项目拟投入的测试人员安排,本项目的报价核算如下(具体价格根据项目模块的大小及系统功能复杂程度再进行协商):
第二部分测试服务
2.1信息应用系统验收测试
2.1.1概述
信息应用系统的质量水平、开发商的工程支持和维护能力,都是直接影响到系统能否保持持续稳定、可靠运行的大事。
考虑到项目的重要性,为保障项目的建设质量,我们将对系统进行全面、系统、科学的质量验收,在应用系统投入正式运营之前进行严格质量把关。
验收测试的主要内容包括:
功能测试、安全性测试、可靠性测试、性能测试、兼容性测试、易用性测试、可扩展性测试、用户文档测试等几方面。
本次验收测试将对项目中文化遗产数据中心、文化遗产数字化采集系统、多媒体展示与观众服务系统、深圳博物馆网站系统、藏品综合业务管理系统、专业数字化系统、行政办公自动化系统、数字博物馆综合管理系统等八大应用系统进行全方面的验收测试。
2.1.2测试项目及方法说明
2.1.2.1功能测试
作为第三方独立测试机构,功能测试主要采用的是黑盒测试方法。
黑盒测试法应制订覆盖委托方提供的《需求规格说明书》和《总体设计书》中要求的全部功能点和主要业务流程的测试用例,通过测试用例的执行,分别对功能点和业务流程进行测试。
1.1功能测试方法
本次功能测试中采用黑盒测试策略,主要测试用例设计方法包括因果图分析、等价类划分、边界值分析、错误推测法:
1)因果图法:
采用因果图法,以委托方提供的《需求规格说明书》和《总体设计书》为依据设计业务功能点测试案例;
2)等价类划分法:
对业务流程进行等价类划分,测试用例应是业务主流程和流程主分支的最小集,所有的判别分支都能被覆盖,在流程覆盖的同时,完成等价功能的测试;
3)边界值分析法在功能测试中,针对功能说明中的输入输出域,进行边界值和极限值的设计和测试;
4)错误推测法:
采用逆向思维方式,结合以往测试经验和直觉设计软件在功能和流程上可能存在的各种错误,进行容错性测试。
功能测试策略主要从以下方面考虑:
Ø安装
如果软件安装由用户来进行,则按照安装手册中的信息应能安装成功。
产品说明书中,给出的每个所需的配置在安装程序时都应具备。
安装之后,程序是否运行应是可以鉴别的。
例如,使用测试用例或通过相应的信息自检。
Ø数据准备
软件内部应具有一定的数据量供测试使用。
最好由厂商提供符合规范的测试数据作为数据准备,也可以由厂商提供数据导入格式,测试方使用该数据导入格式自行制作一定量的数据备测试使用。
Ø功能表现
在用户文档中提到的所有的功能都应能执行。
程序应按照用户文档中的给定形式,在规定的边界值范围内使用相应的工具、资源和数据执行其功能。
Ø正确性
程序和数据应与产品说明书及用户文档的全部内容相对应。
为完成工作任务程序功能应以正确的方式执行。
特别是,程序和数据应符合产品说明书涉及的任何需求文档的所有规定。
Ø一致性
程序和数据其本身内容不能自相矛盾,并且同产品说明书和用户文档也不能相互矛盾。
每一术语应处处保持相同的意思。
由用户进行的程序操作控制和程序的运行表现(例如:
信息、屏幕录入格式和打印报表)应有相同的结构。
Ø用户界面测试
对用户界面的布局、界面文字、操作步骤、操作方式、快捷方式进行测试和验证,必要时候通过用户调研或用户测试,验证用户界面是否满足用户要求。
1.2业务流程测试方法
业务流程测试主要是在功能测试的基础上,测试系统完成某项业务的能力。
业务流程重点考查系统不同模块、不同子系统之间的功能衔接、数据流向以及完成业务功能的正确性和便利性。
我们按照以下原则进行流程测试:
先测功能后测流程:
业务流程测试是建立在功能点测试基础上的。
首先要保证流程测试涉及到的功能点实现正确,所以,流程测试安排在功能测试的后面进行。
先测主流程后测分支流程:
主流程就是指按照正常情况实现的业务流程,分支流程指出现特殊情况后的业务流程。
先测子系统内的流程后测跨子系统的流程:
子系统内的流程测试随子系统的功能测试进行,在子系统流程测试完成后,集中人力进行跨子系统的主流程的联调测试。
本系统中业务流程测试先针对各子系统各自的主业务流程和分支流程分别进行测试,然后对不同子系统之间的业务流及数据流进行测试。
1.3功能覆盖率分析
对每个模块的功能覆盖率进行分析,首先测试用例对所有的业务流程、数据流以及核心功能点的覆盖率达到100%。
其次,必须满足用户测试的需求。
1.4测试内容
本次测试将对以下应用系统中的相关功能进行测试:
2.1.2.2安全性测试
安全性测试采用软件测试当中的黑盒测试方法,对涉及安全的软件功能,如:
用户管理模块、权限管理模块、加密系统、认证系统等进行测试,主要是验证上述功能是否有效,具体方法请参见黑盒测试方法。
2.1.2.3可靠性测试
可靠性是指产品在规定的条件下和规定的时间内完成规定功能的能力。
例如针对某个软件系统,主要的可靠性测试指标包括:
1)屏蔽用户操作错误:
考察对用户常见的误操作的提示和屏蔽情况;
2)输入数据有效性检查:
系统对数据录入的有效性检查;
3)错误提示的准确性:
对用户的错误提示准确程度;
4)错误是否导致系统异常退出:
有无操作错误引起系统异常退出的情况;
5)异常情况的影响:
在程序运行过程中进行掉电或断网试验,考察数据和系统的受影响程度,若受损,是否提供补救工具,补救的情况如何;
6)数据库备份及恢复测试:
系统是否提供数据备份和恢复手段,能否进行数据库的备份和恢复。
7)结合功能测试:
对于用户权限限制、用户和密码封闭性、数据备份与恢复手段、留痕功能等,系统安全性的测试可以结合功能测试完成,因为上述功能即是系统安全性考虑,同时也是系统的功能模块;
8)留痕功能:
系统是否有操作日志,操作日志记录的操作情况的全面性和准确性,是否包括主要要素如操作员、操作日期、使用模块等,是否具有日志查询功能;
9)采用统一身份认证,用户能否操作不属于其职权的其他子系统;
10)外网能否不经过CA认证就可登录该系统。
可靠性测试除了包括上述基本项外,重点的测试内容是数据可靠性和系统长时间无故障稳定运行,可通过以下种方法实施。
1)结合功能测试:
软件可靠性与软件本身的缺陷数量息息相关,因此结合功能测试寻找软件缺陷,可以提高软件系统可靠性,主要是系统的错误屏蔽、数据校验能力和其他与功能相关的可靠性指标;
2)模拟测试:
通过模拟的手段模拟系统异常情况的出现,如:
系统死机、系统掉电、网络中断、设备故障等情况,测试系统对于出现异常情况的预防和恢复措施。
3)独立处理能力:
在某系统发生故障时具有能独立运行的能力。
4)数据可靠性测试:
包括数据备份测试策略、灾难恢复测试、备份与恢复速度。
5)长时间无故障稳定运行:
日常业务疲劳强度测试就是模拟系统的日常业务,持续执行“一段时间”,暴露系统的性能问题,例如内存泄漏、资源争用等,分析与调整的方法与并发性能测试是非常类似的。
高峰业务疲劳强度测试就是模拟系统的高峰业务,持续执行“一段时间”,这样的负载是对系统的双重考验,既包括负载压力,又包括长时间。
2.1.2.4性能测试
1性能测试方法综述
性能测试方法是在系统真实运行环境,基于重点事件优先的原则,设计业务执行效率测试用例,采用测试脚本回放的方法,仿真实现事务的处理过程,通过在单台或多台测试用机上执行多线程或多进程实现多用户并发测试,或者基于批处理模式,加载一定规模的数据量,进行系统资源监控测试。
测试包括执行效率、设备效率、网络效率。
1)执行效率测试主要是测试在特定应用的业务逻辑、用户界面、功能下系统能够承受的用户并发的数量和响应时间。
上述测试可通过自动化的测试工具录制具有一定代表意义的典型操作,并进行测试脚本编译即可形成确定的测试案例,然后通过压力测试工具,模拟多用户同时循环进行这些业务操作,测试服务器事务处理平均响应时间、服务器90%的事务处理平均响应时间、事务处理速率等相关参数,考察系统在各种情况下的性能表现。
在具体测试过程中需要结合功能测试制定相应的测试案例,包括以下内容:
测试脚本:
选择影响系统执行效率的功能模块,录制典型的业务流程脚本作为执行效率测试的基础案例。
测试脚本的制定方法,可以利用测试工具的“录制”功能录制相应的测试脚本,也可以通过脚本编程语言进行脚本的编写;
并发用户数量:
分为负载测试和压力测试,负载测试是指系统能够承受的正常用户并发数量;压力测试是指系统能够承受的最大用户并发数量;
并发方式:
主要指用户并发过程中与真实情况相似程度,包括并发用户数量变化的方式、并发过程使用的真实客户端数量、对于并发峰值的模拟等。
2)设备效率主要指系统CPU占用率、内存占用率、磁盘占用率、输入输出效率等,包括软件在不工作状态下对于硬件资源的占用情况和进行业务处理过程中对于硬件资源的占用情况,包括数据库服务器、应用服务器和客户端等。
通常操作系统均提供了监控端口,只要通过测试工具自动连接相应端口,即可实现监控系统的设备效率,并结合执行效率进行相关测试。
3)网络效率主要指网络吞吐量、网络的使用频度与带宽占用。
性能分析:
通过执行和设备效率及网络效率测试结果进行性能分析,找出可能影响性能的环节。
2性能压力测试实施策略
测试实施可从以下几个方面考虑:
1)并发性能
并发测试的过程,是一个负载测试和压力测试的过程。
即逐渐增加负载,直到系统的瓶颈或者不能接收的性能点,通过综合分析交易执行指标和资源监控指标来确定系统并发性能的过程。
并发性能测试的测试内容如下:
3)速度
主要测试系统关键操作的效率,例如查询信息速度、数据汇总统计的速度等。
4)疲劳测试
通常是采用系统稳定运行情况下能够支持的最大并发用户数,持续执行一段时间业务,通过综合分析交易执行指标和资源监控指标来确定系统处理最大工作量强度性能的过程。
一般情况下利用疲劳强度测试来模拟系统日常业务操作。
2.1.2.5兼容性测试
兼容性测试检测应用系统在不同的软件和硬件配置中的运行情况。
在大多数环境中,客户机、网络连接和数据库服务器的具体硬件规格会有所不同,客户机可能会安装不同的软件,而且在任何时候,都可能运行许多不同的软件组合,从而占用不同的资源。
主要适应性测试的内容有:
•硬件兼容性:
系统对不同型号硬件(如服务器、打印机、扫描仪等设备)的兼容程度。
•软件兼容性:
考察系统与其他现有应用软件的兼容性,如杀毒软件、报表软件等。
•数据兼容性:
符合需求说明书的数据标准要求,在保证系统和数据安全的前提下,能够方便地与其他现有的系统实现数据交换和共享。
2.1.2.6易用性测试
1测试方法:
该质量特性与软件本身的功能缺陷是息息相关的,因此在利用功能测试的结果去分析是得到其他质量特性的主要方法。
对于软件易用性测试,主要利用评估的方式,有经验的测试人员以用户需求说明为准则,按不同的评估项内容给出评价。
7.2测试内容主要包括:
•易安装性:
安装的难易程度,符合流行安装模式;
•用户界面的友好性:
界面的简洁性如何,与人事和物流管理实际业务流程的相符程度如何,界面风格一致性;
•易学习性:
相对一般操作人员来说,学习使用的难度如何,对操作人员有何要求;
•易操作性:
操作的难易程度,对主要或常用功能应该提供快捷方式;
•联机帮助丰富性:
考察联机帮助的准确性、全面性,在关键操作时使用联机帮助的方便性。
2.1.2.7可扩展性测试
1测试方法:
该质量特性与软件本身的功能缺陷是息息相关的,因此在利用功能测试的结果去分析是得到其他质量特性的主要方法。
对于软件可扩展性测试,主要利用评估的方式,有经验的测试人员以用户需求说明为准则,按不同的评估项内容给出评价。
2测试内容主要包括:
•硬件扩展充能力:
系统可适应增加硬件。
•软件扩展能力:
具备支持业务流程的参数化配置和业务功能的重组与更新,在不影响系统原有业务流程的情况下可实现对新业务的灵活增加。
•业务规模扩展能力:
系统是否可以处理更多机构、更多用户的能力。
•系统升级:
系统是否提供升级的手段。
•系统维护:
系统是否提供有效的维护手段。
2.1.2.8用户文档测试
用户文档主要包括用户需求说明书、用户操作手册、设计说明书,我们从以下七个方面对用户文档进行检查:
•规范性
•符合性
•完整性
•一致性
•易理解程度
•印刷与包装质量
•操作实例
2.1.3测试工具说明
应用系统测试工具是该部分件测试工作的一个重要的组成部分,它能够协助测试工程师完成许多手工无法完成或者难以实现的一些测试工作。
正确、合理地选择和使用测试工具可以快速、全面地对软件进行测试,从而提高软件质量。
在不同的测试阶段,我们应该选择不同的测试工具进行测试的实施和管理工作,由于测试工具的使用需要比较高的技巧和比较丰富的经验,所以即使在同一个项目中,我们也可能需要随时根据项目的实际情况选择不同的测试工具。
中国软件评测中心进行过大量的工程项目测试,对于各种测试工具,尤其是测试管理工具、性能测试工具和故障定位工具的使用积累了丰富的使用经验,可以在测试过程中应对出现的各种可能的情况。
就系统验收测试而言,我们将项目的实施分为四个阶段,即项目计划阶段、项目设计阶段、测试实施阶段和报告结果分析阶段。
在每一个阶段我们均会选择不同的测试工具来完成不同的测试任务。
在项目计划阶段和项目设计阶段,我们主要使用测试配置管理工具和测试管理工具完成测试计划、测试需求等文档和规范的管理工作。
在测试实施阶段,我们将根据具体的需要引入功能测试工具、性能测试工具以及故障定位分析工具来进行系统的功能测试和性能测试,并在必要的情况下进行系统故障和应用瓶颈的分析,给出系统调优的建议和调优方案。
同时,在测试实施阶段,我们也需要利用测试管理工具进行系统缺陷的管理,利用配置管理工具进行全过程的文档管理等。
在测试结果分析阶段需要利用测试管理工具进行缺陷的分析和