验收测试是产品研发生命周期中的一个活动过程,指用户验证产品是否满足需求规格说明书。
用户可能是最终用户也可能是外包商,如果是外包商外包的产品,验收测试时,外包商主要是针对合同的符合度进行测试,而验收后合同的符合度直接决定了后期外包商支付给客户的费用。
【验收测试的内容】
验收测试(Acceptance Testing)是在产品完成功能测试和系统测试之后、产品发布之前所进行的软件测试活动,它是技术测试的最后一个阶段,也称为交付测试。验收测试的目的是确保产品准备就绪,并且可以让最终用户将其用于执行产品的既定功能和任务。
验收测试的主要内容包括:制定验收测试的标准、复审配置项和执行验收测试。
(1) 制定验收测试的标准
与系统测试一样,验收测试也需要一系列的测试计划和方案。首先需要确定本次验收测试需要测试哪些种类,即测试哪些方面,如性能测试、可安装性测试、可移植性测试、易用性测试、文档测试等;然后依据测试种类安排相应的测试进度。
测试计划确定后,需要确定验收测试过程中使用的测试用例,关于测试用例的确定,一般有两种方法:
一是在原系统测试阶段设计的测试用例抽取一部分,作为验收测试的用例(因为验收测试不可能对整个系统进行一次完整的测试,一般可能会抽取部分测试用例作为验收测试的用例),但该方法的缺点是,由于系统测试阶段设计的测试用例都已经过了测试,所以这些测试用例正常情况下都能正确地通过测试;
二是在抽取部分测试用例的基础上添加一些特殊的测试用例,这种方法虽然花费的时间相对较长,但是验收会更全面,添加的特殊测试用例可以更好地验收需要关注的功能点。
验收测试主要关注以下几个方面的内容:
(1)软件是否满足合同规定的所有功能和性能。
(2)文档资料是否完整。
(3)人机界面是否准确,并与合同规则相一致。
(4)其他方面(如可移植性、兼容性、错误恢复能力和可维护性等)是否令用户满意。
验收测试的结果有两种:一种是功能和性能指标满足软件需求说明的要求,用户可以接受;另一种是软件不满足软件需求说明的要求,用户无法接受。项目进行到这个阶段才发现严重错误和偏差,一般很难在预定的工期内改正,因此必须与用户协商,寻求一个妥善解决问题的方法。
(2) 复审配置项
验收测试的另一个重要环节是配置项复审,在进行验收测试之前,必须保证所有软件配置项都能进入验收测试,只有这样才能保证最终交付给用户的软件产品的完整性和有效性。复审的目的是保证软件配置齐全、分类有序,并且包括软件维护所必需的细节。
对于一个外包的软件项目而言,软件承包方通常要提供如下相关的软件配置内容:
(1)可执行程序、源程序、配置脚本、测试程序或脚本等;
(2)开发类文档,主要包括《需求分析说明书》《概要设计说明书》《详细设计说明书》《数据库设计说明书》《测试计划》《测试报告》《测试用例》《程序维护手册》《程序员开发手册》《用户操作手册》《项目总结报告》等;
(3)管理类文档,主要包括《项目计划书》《质量控制计划》《配置管理计划》《用户培训计划》《质量总结报告》《评审报告》《会议记录》《开发进度月报》等;
(4)在开发类文档中,容易被忽视的文档有《程序维护手册》《程序员开发手册》。《程序维护手册》的主要内容包括:系统说明(包括程序说明)、操作环境、维护过程、源代码清单等,编写目的是为将来的维护、修改和再次开发工作提供有用的技术信息。
《程序员开发手册》的主要内容包括:系统目标、开发环境使用说明、测试环境使用说明、编码规范及相应的流程等,相当于程序员的培训手册。
对上述的交付文件,需要在合同中规定阶段提交的时间,以免发生纠纷。
在实际的验收测试执行过程中,文档审核是比较难的工作,主要原因有两个方面;一方面是由于市场需求、时间等方面的压力,文档工作被延迟和弱化,将更多的时间和精力花费在产品的研究过程中,而忽略了文档的编写;另一个方面是文档评审往往没有标准可循,不易把握其完善的好与坏。
(3) 执行验收测试
验收测试标准和复审配置项都准备好后,即可开始执行验收测试,验收测试的对象主要包括复审配置项(即文档)的测试和可执行程序的测试。验收测试是整个验收过程中的核心部分。
网友评论