APP下载

软件测试中的测试用例及复用研究

2016-12-02马晓龙

决策与信息 2016年29期
关键词:测试用例测试数据测试方法

张 峰 马晓龙

91404部队 河北秦皇岛 066000

软件测试中的测试用例及复用研究

张 峰 马晓龙

91404部队 河北秦皇岛 066000

软件测试过程中产生的大量测试用例对保证软件的质量起到关键作用,对于专门从事软件测试的机构来说,测试用例的复用尤其重要。在测试用例的设计、选择的基础上,构造出基于复用的测试用例,同时采用测试用例库管理的方法来实现测试用例的复用,可以提高软件测试的工作效率。

测试用例;复用;测试用例复用;测试用例库

一、软件测试中的测试用例

(一)什么是测试用例

测试用例(Test Case),所写为TC,指的是在测试执行之前设计的一套详细的测试方案,包括测试环境、测试步骤、测试数据和预期结果。

简单用一个等式来表示:

测试用例=输入+输出+测试环境

其中,“输入”包括测试数据和操作步骤;“输出”指的是期望结果;“测试环境”指的就是系统环境设置。

(二)测试用例的作用

测试用例在软件测试中的作用主要表现在:

1、指导测试的实施

2、规划测试数据的准备

3、编写测试脚本的依据

4、评估测试结果的度量基准

5、分析缺陷的标准

总之,测试用例是软件项目中很有价值的资产,对提高产品质量有重要的意义。

(三)测试用例的设计

设计测试用例即设计针对特定功能或组合功能的测试方案,并编写成文档。测试用例应该体现软件工程的思想和原则。测试用例的选择既要有一般情况,也应有极限情况以及最大和最小的边界值情况。结合复杂的运行环境,在所有可能的输入条件和输出条件中确定测试数据,来检查应用软件是否都能产生正确的输出。

(四)测试用例的选择

基于复用的目的,在选择测试用例时,要针对不同的测试方法进行明确的选择。

任何工程化的产品都有两种测试方法,即所谓的黑盒测试和白盒测试方法。测试用例的设计将根据两种测试方法的特性定制。

黑盒测试完全不考虑程序的内部结构和处理过程。设计测试用例旨在测试软件是否满足功能要求,主要诊断下列几类错误:

1、不正确或遗漏的功能;

2、人机界面错误;

3、数据结构或外部数据访问错误;

4、性能错误;

5、初始化和中止条件错误。

与黑盒测试相反,白盒测试密切关注处理细节,根据程序的控制结构设计测试用例,原则是:

1、保证模块中的每一独立的路径至少执行一次;

2、保证所有判断的每一分支至少执行一次;

3、保证每一循环都在边界条件和一般条件下至少各执行一次;

4、验证所有内部数据结构的有效性。

二、复用的概念

(一)软件复用

软件复用是将已有的软件及其有效成分用于构造新的软件或系统。其出发点是应用系统的开发不再采用一切“从零开始”的模式,而是以已有的工作为基础,充分利用过去应用系统开发中的经验知识和经验,如需求分析结果、设计方案、源代码、设计计划及测试案例等,从而将开发的重点集中于应用的特有构成成分。

(二)软件测试复用

基于复用的软件测试是软件开发过程中的一个重要阶段,是“为了发现错误而执行程序的过程”。它是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例,并利用这些测试用例去运行程序,以发现错误或缺陷。因此,软件测试的复用主要包括测试过程的复用、测试方法的复用和测试技巧的复用。

1、测试过程的复用,就是测试流程的复用,采用既定的测试流程,针对被测项目的需求,进行裁减,使测试的流程规范化。

2、测试方法的复用,主要指测试计划的设计、测试策略的采用、测试项细则的编写、软件缺陷的分析和测试报告的撰写等方面的复用。

3、测试技巧的复用,主要指测试用例的复用。在特定的情形

下,选择何种测试用例是发现软件问题的关键因素。

三、软件测试中的测试用例复用

(一)测试用例的可复用性

对于基于组件的软件工程,一般来说,除了针对某些特殊的用户需求,复用过程中的组件在结构和功能上都不太可能发生很大的变化,因此采用这些方法生成的测试用例都是可复用的。实际上,在组件的开发过程中,低层被测对象的测试用例或其部分内容常常被复用在高层被测对象的测试中,它们包括:

1、单元测试的功能确认类用例可以在部件集成测试阶段复用;

2、部件确认测试的测试用例可以在单元配置组装测试和确认测试中复用;

3、部件确认测试的测试用例在配置项组装测试和确认测试中的复用;

4、配置项确认测试的测试用例在系统综合测试和系统验收测试中的复用。

(二)测试用例复用

测试用例复用就是把一个软件的测试用例在新的软件测试中使用,或在软件做出修改时在新的软件测试中使用,也包括在相似软件间进行一定的选择后使用。其中主要包括测试用例的设计思想、具体内容、执行步骤,以及测试过程中产生的信息在新的软件测试中的使用。

软件测试经过单元测试、集成测试、确认测试、系统测试后,产生了大量的测试用例和测试方法,所有的这些测试用例和测试方法都可以重新利用。

(三)测试用例复用实现的思路

对第三方测试机构来说,要实现测试用例的复用,须针对特定的项目,按照测试用例的一般描述,精心设计、选择、并收集大量的测试用例到测试用例库中,对它们实施有效管理。在这个基础上,按照一定的复用原则,并采取相应复用技术,实现测试用例的复用。

首先,基于复用的目的,对所使用的测试用例进行统一的建模组织。其次,对数据库中存有的测试用例实行有效管理。最后,对数据库中的测试用例具体实现复用。

(四)测试用例复用的实现过程

对一个软件测试来说,测试用例复用可以划分为同一软件在不同测试阶段、不同时间测试下的复用和相似软件之间的复用。

1、同一软件测试。

2、相似软件的测试。

(五)对测试用例复用的评价

在面向对象的系统中,测试用例的设计和实现往往对应于被测对象的需求、设计和环境要求,它们缺乏统一的结构,测试用例之间也存在着相互的联系。所以,测试用例的复用也是一定程度和一定数量上的复用,其中还与采用的复用技术、测试人员和其他客观因素相关。

四、结束语

通过介绍软件测试过程中测试用例的设计、软件和软件测试的复用,说明了在软件测试中实现测试用例的复用的可行性、必要性,针对第三方测试机构,采用测试用例库管理的方法具体实现一定范围的测试用例复用。进而说明了测试用例的复用在保证软件质量的前提下,改进了软件测试技术,提高了软件测试的效率。

[1]赵斌.软件测试技术经典教程.科学教育出版社.

[2]柳纯录等.软件评测师教程.清华大学出版社.

[3]邓良松等.软件工程.西安电子科技大学出版社.

猜你喜欢

测试用例测试数据测试方法
基于ID3决策树算法的大学生体能测试数据管理系统设计
沥青混合料沥青用量测试方法研究
基于应变测试方法的汽车涉水姿态研究
基于LDA模型的测试用例复用方法*
基于路径关键状态变量的测试用例约简
测试数据管理系统设计与实现
一种嵌入式数控系统的体系结构与系统设计
AEBS场地测试方法
基于自适应粒子群优化算法的测试数据扩增方法
空间co-location挖掘模式在学生体能测试数据中的应用