版权归原作者所有,如有侵权,请联系我们

[科普中国]-测试套件

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

通常把一组相关的测试称为一个测试套件(test suite)。

简介软件工程中的测试套件test suite)有时也称为验证套件validation suite),是许多测试用例的集合,测试用例可用来测试一程式是否正确工作,测试套件包括许多测试用例,一般也会有针对测试用例及其测试目的的详细说明,在进行测试时的系统组态资讯以及测试前需进行的步骤。

通过测试套件,将服务于同一个测试目的或同一运行环境下的一系列测试用例有机的组合起来。测试套件是按照测试计划所定义的各个阶段的测试目标决定的,即先有测试计划,后面才有测试套件。

测试用例的集合是测试套件,不过常误称为测试计划、测试脚本或是测试场景。

Java语言的单元测试框架JUnit中,就有提供支援测试套件功能的TestSuit物件。1

分类有时测试套件会用来将类似测试用例集合在一起。例如测试套件可以是一个只包括冒烟测试测试用例的测试套件,或者是针对系统特定机能的测试套件。一个测试套件也可以包括所有的测试,并且标明其用途为冒烟测试或是针对特定的机能。

可执行的测试套件(executable test suite)可以被程式执行,常常是指测试套件已整合了自动化测试框架。测试套件及自动化测试框架可以交换细节资讯,共同测试被测系统。

例如一个质数检验子程序的测试套件可能会列出许多整数,及其是否为质数,也会有其测试程式。测试程式的任务就是将每个数字用子程序确认其是否为质数,再将结果和事先记录的结果相比对。1

测试用例软件工程中的测试用例是一组条件或变量,测试者根据它来确定应用软件或软件系统是否正确工作。确定软件程序或系统是否通过测试的方法叫做测试准则。

测试用例的测试过程通常可以一步完成,有时需要连续的几步。通常会给出期望的结果或现象。除此之外,还可以给出如下信息:

测试用例编号

测试用例描述

测试步骤编号或执行顺序编号

相关依赖

测试分类

负责人

是否是自动化测试

测试完成后还可以追加或完善如下信息:

是否通过

备注

大型测试用例还可能包括前提状态及相关描述。

书面格式的测试用例还应含有填写实际测试结果的空间。2

软件测试软件测试(英语:software testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和品质的过程。据此,您可能会想,软件测试永远不可能完整的确立任意电脑软件的正确性。然而,在可计算理论(计算机科学的一个支派)一个简单的数学证明推断出下列结果:不可能完全解决所谓“死机”,指任意计算机程序是否会进入死循环,或者罢工并产生输出问题。换句话说,软件测试是一种实际输出与预期输出间的审核或者比较过程。

软件测试的经典定义是:在规定的条件下对程序进行操作,以发现程序错误,衡量软件品质,并对其是否能满足设计要求进行评估的过程。

软件测试有许多方法,但对复杂的产品运行有效测试不仅仅是研究过程,更是创造并严格遵守某些呆板步骤的大事。测试的其中一个定义:为了评估而质疑产品的过程;这里的“质疑”是测试员试着对产品做的事,而产品以测试者脚本行为反应作为回答。虽然大部分测试的智力过程不外乎回顾、检查,然而“测试”这个词意味着产品动态分析──让产品流畅运行。程序品质可能,而且通常会,随系统不同而有差异;不过某些公认特性是共通的:可靠性、稳定性、轻便性、易于维护、以及实用性。2

本词条内容贡献者为:

王沛 - 副教授、副研究员 - 中国科学院工程热物理研究所