软件测试的复用策略研究

2013-08-15 00:44天津工业大学计算机科学与软件学院
电子世界 2013年6期
关键词:测试用例软件测试样式

天津工业大学计算机科学与软件学院 李 毅

软件复用作为一种新技术,近年来越来越受到软件业和科研工作者的重视。软件复用是提高软件的生产效率、解决软件危机问题的一个重要途径。测试用例是软件测试过程中的核心资产,软件测试成本的大部分就是用于测试用例的设计,而测试用例的优劣往往取决于测试工程师的经验和水平,并且直接影响软件测试的效率。

1.测试用例复用的研究现状

测试用例复用的研究主要分成两个方面:可复用测试用例的生成和可复用测试用例的管理。可复用测试用例的生成主要研究使生成的测试用例可供多次使用,具有可复用的特性。测试用例的生成是测试用例复用的先决条件,只有拥有足够多的可供利用的测试用例,才有复用的可能。可复用测试用例的管理,包括测试用例的存储、检索、复用、维护等。国内外对测试用例的管理和共享机制,大部分仅限于组织内部,甚至仅仅限制于一个项目内部。例如部分单元测试用例在集成测试中重用,部分集成测试用例在系统测试中重用,系统测试用例在回归测试中重用等。这些测试用例的复用对组织、项目的依赖性高,因而复用程度低。因此,大规模的可复用测试用例库成为复用的必要支撑,由此引入的测试用例库的建设和管理。

2.软件测试用例的复用策略

软件产品的功能和性能依赖于采用的软件开发技术、系统的运行环境和软件应用领域的三维体系,因此,一个软件测试用例的设计是离不开其软件的周境(Context)的,也就是说,软件测试用例的设计是因系统运行环境和应用领域不同而不相同的。

2.1 测试样式实例

测试样式是对特定的、可重复使用的软件测试问题提供一个通解,它包括决定样式应用系统环境的上下文(即:周境),以及由相关因素组成的部件。软件测试样式描述了测试设计中最基本的问题,也是软件测试设计的最佳实践。样式作了测试用例一个隐含的断言:假定满足了在样式中的上下文和组成因素的条件表达式,这将是一种很好的解决问题的方式。因此,样式是针对特定需要解决问题的一种通解,样式的种类多种多样,千变万化,但可以根据测试的实际需要量身订做。针对不同的被测项目对象,软件测试的着重点也不一样,因此会有非常多的类型测试样式。V.Binder提出了32种测试样式,测试样式简化了软件构造框架,关注为完成某种测试所必须的问题,因为样式是求得特定问题一个通解,在软件测试过程中是完全可以复用的,软件测试样式的具体实现就是一个测试包,由多个软件测试用例组成。

然而,不管软件测试需求怎么变化,一个测试样式可以形式化的描述为一个十元组:

Test pattern=(Na,Ob,Ct,Fm,St,Ey,Et,Cl,Ka,Cp)

即:{样式名称,样式目标,测试周境,故障类型,策略,入口准则,出口准则,结论,己知应用,相关样式}。

(l)样式名称Na:表示能标识该测试样式的名称和短语;

(2)样式目标ob:每个样式都有其需要实现的目标,即满足软件测试设计所期望的某个特定的测试功能;

(3)周境Ct:强调软件测试设计的基本问题,描述样式解决的测试设计问题,使用的范围和时间,针对的软件实体范围设定其运行环境;

(4)故障类型Fm:阐述样式所采用的故障模型以及采用的该模型的理由,故障模型对发现存在的缺陷非常重要,有效的测试必须致力于在几乎很好的代码中能发现隐藏的极少的故障或缺陷;

(5)策略St:给出软件测试设计和实现的最好测试用例的算法、技术路线和系统应有的提示;

(6)入口准则Ey:定义使用该样式的前提条件和所做的必要准备工作;

(7)出口准则Et:定义满足样式的测试目标必须获得的条件,及测试样式的输出条件;

(8)结论Cl:介绍采用此样式的优点和缺点,包括测试开销、获得的利益、需要承担的风险以及相关情况的说明;

(9)己知应用Ka:介绍此样式的应用的成功案例和取得的测试经验;

(10)相关样式Cp:与此样式相类似的样式,并对样式加以补充资料说明。

2.2 可复用测试样式

可复用测试样式是对可复用的软件测试问题提出一个通解,它包括决定样式应用的周境,以及相关因素组成的部件。软件测试用例的复用有三个基本的条件:一是必须有可以复用的软件测试用例,二是复用的软件测试用例对将来软件测试是非常有用的,三是复用者应该知道如何去使用被复用的测试用例。正确地刻画、描述和管理可复用的测试用例是实现测试用例复用的关键技术。可复用测试用例模式是在通用软件测试用例属性的基础上,增加可复用的属性与特征,如测试接口描述、功能粒度、复用频度和版本信息等,以便利用已有的软件测试用例资源来支持软件测试用例的复用。可复用测试样式是对可复用的软件测试问题提出一个通解,它包括决定样式应用的周境,以及相关因素组成的部件。可复用测试样式具体的内容如下:

(1)样式名称Na:可复用软件测试样式;

(2)样式目标Ob:采用该样式设计的测试用例,可以用黑盒测试方法进行复用;

(3)周境Ct:测试用例应该以测试类型、被测试领域、测试方法、测试目的进行分类;

(4)故障模型Fm:可以采用数据域的边值分析、因果图和错误推测法;

(5)策略St:从黑盒测试的角度出发,只关心软件的行为,最大限度地屏蔽软件系统运行环境和开发技术的因素,让测试用例具有独立性;每个测试用例只需与一个特定测试场景和唯一的结果相关联,一旦软件测试用例失败,不会造成对其他软件测试用例执行的影响;

(6)入口准则Ey:使用该样式的前置条件是符合复用条件和分类条件的;

(7)出口准则Et:需要达到软件测试目标而设定的复用要求;

(8)结论Cl:采用该样式开发的可复用软件测试用例,可以提高测试用例的复用力,极大地提高软件测试用例设计的效率,推动测试用例的共享;

(9)己知应用Ka:在《软件测试管理公共服务平台》软件中已得到应用;

(10)相关样式Cp:共用测试样式。

2.3 测试用例的复用策略与知识共享实现

在编写测试方案时,首先根据被测的功能点,定义需要的测试用例类型,在测试用例库中选择,如果存在相应的软件测试用例并且合理有效,则复用到软件测试方案中去,如果不存在相应的可复用软件测试用例,则创建一个新的软件测试用例加入到软件测试方法中,当该测试方案被执行,新的测试用例得到了实际应用系统的检验,并确定无误后,则将新的软件测试用例添加到用例库中,这样便可以保证软件测试用例的收集和积累,从而创造了软件测试用例知识库的共享。

3.结束语

软件测试的复用不仅可以从软件测试的管理工程中复用,同时也可以有效的管理测试用例,实现测试用例的不同软件项目之间的复用,也可以在同一项目不同测试类型之间复用。本研究分析和研究了软件测试技术中的复用所采用策略,将有助于软件测试复用技术的发展,同时可以指导软件测试的实践过程。

猜你喜欢
测试用例软件测试样式
CPMF-I 取样式多相流分离计量装置
CPMF-I 取样式多相流分离计量装置
取样式多相流分离计量装置
基于SmartUnit的安全通信系统单元测试用例自动生成
基于OBE的软件测试课程教学改革探索
航天软件测试模型构建与应用
EXCEL和VBA实现软件测试记录管理
基于混合遗传算法的回归测试用例集最小化研究
软件测试工程化模型及应用研究
这是巴黎发布的新样式