论文部分内容阅读
软件测试是当今计算机科学与工程中起着至关重要作用的领域之一。近年来,随着软件测试理论和技术的不断发展,它已成为软件工程领域内保证软件质量的必不可少的关键过程。 状态图是在为一个复杂反应系统的控制需求建模时提出的,Harel在状态机的基础上,增加了通信、并发和嵌套机制,提出了适合于描述复杂系统的状态图,很多面向对象的分析设计工具都采用了状态图的概念,例如统一建模语言(UML)。使用状态图为系统建模可以在分析设计阶段避免状态空间爆炸问题,但是在集成测试阶段却仍然存在状态空间爆炸问题,此外,测试用例是否可执行也一直是测试阶段面临的困难之一。 本文在现有测试理论发展的基础上,通过状态约束机制和数据流、控制流结合生成测试序列的方法,在一定程度上缓解了这两个问题。文章首先介绍了UML集成测试目前的研究现状,给出了现有的一些方法对这两个问题的解决途径;然后定义了状态约束机制,在构造集成状态机时,状态约束将有效的避免状态空间的爆炸,同时,本章给出了引起状态约束的几类同步变迁的定义;接下来提出了带标记的扩展有限状态机的定义,该状态机将用于状态图的集成过程,它在语义上保证了变迁的聚合和消除,记录了集成测试的必要信息;此外,文章还给出了可以聚合活消除的变迁,这些变迁的聚合或消除抛弃了大量不可执行序列,同时也消除了一些不可达的集合状态;最后,文章给出了基于数据流和控制流的覆盖准则,这在一定程度上避免了不可执行测试序列的生成。