上海建桥学院函授《软件工程》学习课程-确认测试

院校:北京林业大学研究生培训 发布时间:2021-04-26 09:50:29

    确认测试

    确认测试是在软件开发过程结束时对软件进行评价,以确认它和软件需求是否一致的过程。确认测试也称验收测试,其目标是验证软件的有效性。上面这句话中使用了确认和验证这样两个不同的术语,为了避免混淆,首先扼要地解释一下这两个术语的含义。通常,验证指的是保证软件正确地实现了某个特定要求的一系列活动,而确认指的是为了保证软件确实满足了用户需求而进行的一系列活动。

    那么,什么样的软件才是有效的呢?软件有效性的一个简单定义是:如果软件的功能和性能如同用户所合理期待的那样,软件就是有效的。需求分析阶段产生的软件需求规格说明书准确地描述了用户对软件的合理期望,因此是软件有效性的标准,也是进行确认测试的基础。

    1.确认测试的范围

    确认测试必须有用户的积极参与,或者以用户为主进行。用户应该参与设计测试方案,使用用户界面输入测试数据,并且分析评价测试的输出结果。为了使得用户能够积极主动地参与确认测试,特别是为了使用户能有效地使用这个系统,通常在验收之前由开发单位对用户进行培训。

    确认测试通常使用黑盒测试法,主要使用实际数据进行系统运行。

    首先制定测试计划,规定要做测试的种类。还需要制定一组测试步骤,描述具体的测试用例。

    在全部软件测试的测试用例运行完后,所有的测试结果可以分为两类:

    (1)功能和性能与用户要求的一致,软件可以接受。

    (2)功能和性能与用户要求有差距。

    2.软件配置复查

    确认测试的另个重要内容 是软件配置复审。 软件配置复查的目的就是要保证:软件配置的所有成分都齐全,各方面的质量都符合要求,具有维护阶段所必需的细节,而且已经编排好分类的目录。

    除了按合同规定的内容和要求由人工审查软件配置外,还应当严格遵守用户手册和操作手册中规定的使用步骤,以便检查这些文档资料的完整性和正确性。

    3.a测试和β测试

    在软件交付使用之后,用户将如何实际使用程序,对于开发者来说是无法预测的。如用户可能错误地理解命令,或提供些 奇怪的数据组合, 也可能对输出信息迷感不解。 因此,应由用户进行-系列 “验收测试”。

    当软件是为特定用户开发的时候,需要进行一系列的验收测试,让用户验证所有的需求是否已经满足。验收测试是由最终用户而不是系统的开发者进行的。

    如果软件是为多个用户开发的产品,让每个用户逐个执行正式的验收测试是不切实际的。很多软件产品生产者采用一种称之为a测试和β测试的测试方法,以发现可能只有最终用户才能发现的错误。

    (1)a测试。

    在一个受控的环境下,由用户在开发者的“指导”下进行的测试。由开发者记录错误和使用中出现的问题。测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。a测试的目的是评价软件产品的FLURPS (即功能、局域化、可使用性、可靠性、性能和支持),尤其注重产品的界面和特色。经过a测试调整的软件产品称为版本。

    (2)β测试。

    β测试是由软件的多个用户在实际使用环境下进行的测试。这些用户返回有关错误信息给开发者。测试时,开发者通常不在测试现场。因而,β测试是在开发者无法控制的环境下进行的软件现场应用。

    在β测试中,由用户记下遇到的所有问题,包括真实的以及主观认定的,定期向开发者报告。β测试主要衡量产品的FLURPS (即功能、局域化、可使用性、可靠性、性能和支持),着重于产品的支持性,包括文档、客户培训和支持产品生产能力。

    只有当a测试达到一定的可靠程度时,才能开始β测试。它处在整个测试的最后阶段。同时,产品的所有手册文本也应该在此阶段完全定稿。