然而,随着软件行业的飞速发展,越来越多的业务流程集成于软件之中,并且业务逻辑的复杂性也与日俱增,因此,场景法在测试用例设计过程中占有越来越大的比重。但是场景法在对复杂业务流程进行测试时,存在着一些问题,会产生大量重复的测试用例,浪费软件测试资源。为了去除多余或等效的测试用例,需要确定了所有测试用例后对得到的测试用例进行复审和验证,导致测试人员承受着巨大的工作量。
因此对场景法进行优化,使得其更有效便捷的设计测试用例,成为软件测试领域中一个重要的研究问题。
1.2基于UML活动图的测试用例设计方法
活动图是一种用来表达描述软件业务的过程及工作流的技术,一般用来对业务过程或工作流进行建模,也可以用来对测试用例甚至是程序实现来建模。
现如今,基于模型的测试用例的生成方法已经被软件行业广泛接受。这种方法的优点就是可以及早发现问题,减少软件开发所需要的时间。现在,很多软件研究人员已经考虑从UML图中去获得所需要的测试用例。
例如,南京邮电大学的苏翠翠介绍了一种从UML2.0活动图中产生用例的方法,提出了活动路径覆盖准则,重点分析并发活动的顺序以及排列方式,引入深度优先与广度优先相结合的生成算法,避免了测试用例数量不可控增长,从而提高了自动化生成测试用例的可行性。
1.3基于场景法的测试用例设计方法
场景法是设计测试用例的一种重要方法,主要利用不同的场景来对整个系统不同的功能点或业务流程进行描述,从而提高软件测试的工作效果。场景法是通过寻找业务流程的基本流和备用流,描述经过的路径来确定流程,再遍历所有的基本流和备用流来完成整个场景。
传统意义上的场景法,是确定测试用例的一个重要方法。但是由于场景法自身的一些限制与问题,会产生一些多余或者重复效果的测试用例,为了消除这些冗余或者等效的测试用例,测试人员需要在确定了所有测试用例之后对产生的测试用例进行反复的审查与验证,这样增加了测试人员工作的难度。
为了解决这个问题,同济大学的潘建勇提出了一种基于场景优化的方法,按照一定的优化规则,对场景进行优化之后可以更加方便有效的为设计测试用例提供有利的条件和基础。最后,再结合XML语言的特点对测试用例进行系统的描述,并成功将这个方法应用到实例当中,证实了这个方法的有效性与可行性。
1.4本文研究的问题
以上两个方面的研究都是基于用例场景开展的:UML活动图源于用例描述,基于UML活动图生成测试用例的方法的优势在于较为容易构造被测业务流程的模型,但未能很好的利用用例场景的概念,从语义的角度提高测试用例的生成效率;基于场景的优化方法则充分考虑了用例场景的构建,但是针对复杂业务流程,存在着构建场景困难,生成的测试用例冗余性较高的问题。本课题将基于UML活动图构建用例场景,并展开优化算法的研究,具体的研究过程为:
1、UML活动图与场景法的研究。分析了UML活动图的组成元素以及工作流路径,研究了场景法设计测试用例的具体步骤,并采用实例加以说明。
2、构建基于UML活动图的测试场景模型。将繁琐复杂的业务流程通过UML活动图表示,再将UML活动图抽象建模为有向图,把活动图中的所有元素信息映射为有向图的节点与有向边,通过对有向图进行路径搜索,计算所有可能的路径,每条路径对应一个场景。
3、设计场景优化策略,并实现相关算法。针对测试场景模型,提出了一种基于基本路径的优化策略,通过计算基本路径集合,从而减少冗余路径,降低重复场景的数量。采用Java语言设计了一个测试用例自动生成程序,实现了优化算法,达到了场景优化的目标。 基于用例场景的测试用例设计方法研究(2):http://www.751com.cn/jisuanji/lunwen_47693.html