软件测试中的测试用例复用技术

  摘要:软件测试是确保软件质量的可靠手段,是软件开发过程中必不可少的重要环节。本文提出了面向复用的测试用例设计过程,为软件测试用例复用提供了实现策略。软件测试用例的复用对于缩短软件开发周期和降低软件开发成本具有极其重要的意义。

  关键词:软件测试;测试用例

  1、引言

  随着软件工程领域的拓展,在软件产业飞速发展的今天,软件测试成为保证软件质量的重要手段。测试用例的选择对于软件测试的成败起着决定性作用,因此如何设计最少的测试用例实现最大的测试覆盖成为自动化测试领域中的主要研究对象。测试用例是确定一组最有可能发现错误的测试数据和流程,实现系统对某个功能的测试。而测试用例的设计与测试人员的个人经验息息相关,不同测试人员的个人经验和书写格式的差异导致了测试的盲目性,以至于产生较高的后期维护费用。测试用例的复用技术一方面是为了解决由测试人员经验不足带来的问题,同时还避免了在设计测试用例中的重复劳动,有效地提高了测试效率。

  2、软件测试

  2.1 软件测试的定义

  软件测试(Software Testing)是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(包含输入数据及其预期的输出结果),并用这些测试用例去运行程序,以发现程序错误的过程。

  2.2 软件测试的目的

  Glenford J.Myers就软件测试的目的提出了以下观点:

  2.2.1 测试是程序的执行过程,目的在于发现错误;

  2.2.2 一个好的测试用例在于能发现至今为止尚未发现的错误的用例;

  2.2.3 一个成功的测试是指揭示了至今为止尚未发现的错误的测试。

  测试的目的花费最小的代价找出软件中潜在的各种错误和缺陷,通过修正各种错误和缺陷来提高软件质量,回避因软件潜在错误和隐患带来的商业风险。

  3、软件测试用例的复用

  3.1 软件测试用例的复用

  软件测试复用可以理解为在两次或多次不同的软件测试过程中重复使用相同或相近的测试资源来组织测试的过程。软件测试的复用主要包括测试流程的复用、测试方法的复用和测试用例的复用。其中测试用例的复用是测试复用中的关键技术。所谓测试用例复用是指对一个软件已执行的测试用例,将其不同程度地应用于该软件新阶段的测试中或其他软件的测试中。可复用的测试用例具有通用性、独立性、有效性、标准化和完整性的特点。

  3.2 可复用测试用例的设计

  测试用例能否成功被复用很大程度上取决于测试用例的独立性,即能否独立地应用于不同的应用场合和应用环境。在实际应用当中,很多测试用例之间存在着相互的关联。有的测试用例的运行环境要取决于另外测试用例的执行状态,当它所依赖的环境变化或失效时,而与之相关联的其他测试用例的复用属性也可能随之消失。那么如何设计不依靠软件运行环境具有较高独立性、与其他测试用例减少关联且具有统一输入输出接口的可复用的测试用例就成为问题的关键所在。

  测试用例是面向不同应用对象的,与被测试软件具有很高的耦合性。为了使得设计的测试用例能够实现成功复用,在测试用例的设计上采取如下步骤。

  3.2.1 共性分析

  首先应该对被测软件进行共性分析,同一应用领域的软件有相似的需求,分析其诸如工作流程或功能相同等共同特点,并根据他们的共性挖掘可复用因素。

  3.2.2 测试用例统一建模

  根据可复用因素,设计合适的测试策略,对测试用例的设计做出统一的建模组织,设计统一的结构和输入输出接口。

  3.2.3 设计可复用的测试用例

  为了尽可能地降低测试用例与被侧软件的相关性,在设计测试用例时应该尽量对其进行通用化处理,同时应保持测试用例的功能单一性。测试用例和被测软件的高耦合性决定了测试用例的复用大多只在同一软件的回归测试或版本升级测试中成功实现,而很难在不同应用领域的软件测试中使用。

  ......

本文转载自51Testing软件测试网,查看全文:http://www.51testing.com/html/12/n-827912.html

你可能感兴趣的:(软件测试)