验收测试是产品研发生命周期中的一个活动过程,指用户验证产品是否满足需求规格说明书。

用户可能是最终用户也可能是外包商,如果是外包商外包的产品,验收测试时,外包商主要是针对合同的符合度进行测试,而验收后合同的符合度直接决定了后期外包商支付给客户的费用。

本章主要包括以下内容:

验收测试的内容验收测试的策略验收测试的过程实施验收测试提交验收测试报告
【验收测试的内容】

验收测试 (Acceptance Testing) 是在产品完成功能测试和系统测试之后、产品发布之前所进行的软件测试活动,它是技术测试的最后一个阶段,也称为交付测试。验收测试的目的是确保产品准备就绪,并且可以让最终用户将其用于执行产品的既定功能和任务。

验收测试的主要内容包括:制定验收测试的标准、复审配置项和执行验收测试。

(1) 制定验收测试的标准

与系统测试一样,验收测试也需要一系列的测试计划和方案。首先需要确定本次验收测试需要测试哪些种类,即测试哪些方面,如性能测试、可安装性测试、可移植性测试、易用性测试、文档测试等;然后依据测试种类安排相应的测试进度。

测试计划确定后,需要确定验收测试过程中使用的测试用例,关于测试用例的确定,一般有两种方法:

一是在原系统测试阶段设计的测试用例抽取一部分,作为验收测试的用例 (因为验收测试不可能对整个系统进行一次完整的测试,一般可能会抽取部分测试用例作为验收测试的用例),但该方法的缺点是,由于系统测试阶段设计的测试用例都已经过了测试,所以这些测试用例正常情况下都能正确地通过测试;
二是在抽取部分测试用例的基础上添加一些特殊的测试用例,这种方法虽然花费的时间相对较长,但是验收会更全面,添加的特殊测试用例可以更好地验收需要关注的功能点。
验收测试主要关注以下几个方面的内容:

(1) 软件是否满足合同规定的所有功能和性能。(2) 文档资料是否完整。(3) 人机界面是否准确,并与合同规则相一致。(4) 其他方面 (如可移植性、兼容性、错误恢复能力和可维护性等) 是否令用户满意。
验收测试的结果有两种:一种是功能和性能指标满足软件需求说明的要求,用户可以接受;另一种是软件不满足软件需求说明的要求,用户无法接受。项目进行到这个阶段才发现严重错误和偏差,一般很难在预定的工期内改正,因此必须与用户协商,寻求一个妥善解决问题的方法。

(2) 复审配置项

验收测试的另一个重要环节是配置项复审,在进行验收测试之前,必须保证所有软件配置项都能进入验收测试,只有这样才能保证最终交付给用户的软件产品的完整性和有效性。复审的目的是保证软件配置齐全、分类有序,并且包括软件维护所必需的细节。

对于一个外包的软件项目而言,软件承包方通常要提供如下相关的软件配置内容:

(1) 可执行程序、源程序、配置脚本、测试程序或脚本等;(2) 开发类文档,主要包括《需求分析说明书》《概要设计说明书》《详细设计说明书》《数据库设计说明书》《测试计划》《测试报告》《测试用例》《程序维护手册》《程序员开发手册》《用户操作手册》《项目总结报告》等;(3) 管理类文档,主要包括《项目计划书》《质量控制计划》《配置管理计划》《用户培训计划》《质量总结报告》《评审报告》《会议记录》《开发进度月报》等;(4) 在开发类文档中,容易被忽视的文档有《程序维护手册》《程序员开发手册》。《程序维护手册》的主要内容包括:系统说明 (包括程序说明)、操作环境、维护过程、源代码清单等,编写目的是为将来的维护、修改和再次开发工作提供有用的技术信息。
《程序员开发手册》的主要内容包括:系统目标、开发环境使用说明、测试环境使用说明、编码规范及相应的流程等,相当于程序员的培训手册。

对上述的交付文件,需要在合同中规定阶段提交的时间,以免发生纠纷。

在实际的验收测试执行过程中,文档审核是比较难的工作,主要原因有两个方面;一方面是由于市场需求、时间等方面的压力,文档工作被延迟和弱化,将更多的时间和精力花费在产品的研究过程中,而忽略了文档的编写;另一个方面是文档评审往往没有标准可循,不易把握其完善的好与坏。

(3) 执行验收测试

验收测试标准和复审配置项都准备好后,即可开始执行验收测试,验收测试的对象主要包括复审配置项 (即文档) 的测试和可执行程序的测试。验收测试是整个验收过程中的核心部分。


↙↙↙阅读原文可查看相关链接,并与作者交流