可复用测试用例研究(2)

发表于:2015-04-02来源:uml.org.cn作者:不详点击数: 标签:测试用例
2、面向复用的测试用例设计过程 当前,测试用例设计都砥向不同的具体应用,与被测软件是紧耦合的。考虑到复用的目的,测试用例的设计应不同于以往

  2、面向复用的测试用例设计过程

  当前,测试用例设计都砥向不同的具体应用,与被测软件是紧耦合的。考虑到复用的目的,测试用例的设计应不同于以往。本文提出了面向复用的测试用例设计过程,给出了设计过程中应实施的各项活动,主要包括被测软件(系统)共性分析、测试策略分析、设计测试用例、测试用例评审、测试用例执行和修改、测试用例入库共六个步骤,如图l所示。该过程对现有测试用例的复用处理也是适用的。

  2.1共性分析

  同一领域或相同架构的软件存在着共性需求。通过共性分析或领域分析,并结合任务分析等方法,梳理出被测软件所属领域或相同类型软件的相同或相似特征及需求,例如,工作流程、共性场景、功能、性能等,从而挖掘出可复用点,例如,相对独立且类似的功能、相同的构件、相似的业务流程。该步骤实质上要抽象出被测软件应用领域的概念,类似于设计模式中的共性分析。

  这项活动需要领域专家、软件专家、设计人员、测试专家等人员参与。

  2.2 测试策略分析

  针对共性分析挖掘出的可复用点,分析各复用点的测试策略,包括测试类型、测试方法、测试环境、测试覆盖率等内容。

  2.3 设计测试用例

  根据前两个步骤的分析结果对每个可复用点设计测试用例。在设计时,应使所设计的测试用例满足可复用测试用例的特性,特别要注意以下几方面:

  1)每个测试用例的目的要尽量独立、单一,以满足可复用测试用例独立性的要求。

  2)对一项明确的测试需求,应关注“测试思想”,即测试思路,以满足可复用测试用例通用性要求。当前,为了使测试用例是可操作的、可复现的,一般都要求测试用例要设计得非常详细,例如,每一操作步骤的输入数据、操作等信息都要具体描述。这样的测试用例和被测软件是紧耦合的,只有在同一软件的回归测试和版本升级维护测试中可能会复用到,在其他情况下复用是很困难的。在设计可复用测试用例时,测试用例的可操作性、可复现性要弱化,即,对测试用例进行通用化处理,排除和特定应用相关的具体信息,以降低测试用例和被测软件的相关度,例如,参数化或公式来代替具体的输入数据,抽象出共同或关键的操作等。但为了加强测试用例的可操作性和可复现性,在设计可复用测试用例时,应对一些差异之处进行预测,即进行可变性分析mJ,并用适当的方式描述出来。只有这样,当复用该测试用例时,测试人员可以在原有基础上对其进行完善,使其能够满足特定的测试情况。

  3)将设计出的测试用例用规范而精炼的自然语言清晰地描述出来,保证其完整、标准。软件评测组织或机构应定义本组织使用的规范和术语。

  需要说明的是,对于一个具体的测试项目,因为面向复用,所以以上所设计的测试用例可能不完全满足被测软件的测试需求,为此,应针对被测软件的需求补充新的用例或对现有用例进行充实完善。

  2.4 测试用例评审

  可复用测试用例设计完成后,组织领域专家、软件专家、测试专家、软件设计人员对其进行评审,确保所设计的测试用例是正确的,满足可复用测试用例的特性。

  评审同时应关注以下几点:每个共性需求的测试策略是否合适;每个共性需求是否被可复用测试用例所覆盖;每个共性需求是否被可复用测试用例进行了充分测试,例如,某一共性功能,不能仅测试正常情况,还应测试边界和异常情况。如果测试用例没有通过评审,则需要重新回到设计测试用例步骤。

  2.5 测试用例执行和修改

  将通过评审确认的测试用例用于被测软件,寻找其不正确或不完善之处并纠正完善。

  2.6 测试用例入库

  将经过测试执行确认的可复用测试用例统一纳入测试用例库中,供测试人员在后续软件测试或以后的项目中查询使用。测试用例库应是按照一定的组织结构形成的测试用例集合。

  3、基于复用的软件测试模型

  文献给出了一个测试用例复用流程:首先定义被测软件的测试用例类型;再根据所定义的从测试用例库中检索是否有适合的用例;如果可以找到,则提取出测试用例,程序结束;否则,需要设计测试用例,验证其正确性,如果正确,则添加到库中以便再次复用,程序结束。这个流程只适用于完全不需要进一步完善的可复用的测试用例,由于可复用测试用例的通用性,该流程显然不适用于实际情况。文献[12]给出了另一个测试用例复用模型,该模型建立在没有测试用例库的基础上,且将测试用例分为内外两类,本文认为这种划分是不必要的。

原文转自:http://www.uml.org.cn/Test/201308143.asp