论文部分内容阅读
软件测试是软件工程中的一个阶段,是保证软件质量的一个重要手段。随着面向对象软件开发技术的广泛应用和软件测试自动化的要求,特别是基于UML的软件开发技术的逐渐普及,基于UML的面向对象软件测试正日益受到关注。本文的主要内容就是基于UML图,生成面向对象软件不同测试级别的测试用例。首先分析了面向对象软件的特点、测试难点与测试层次,介绍了UML及其与面向对象软件测试的关系,然后详细探讨了基于UML状态图的类级测试用例生成与基于顺序图的集成级测试用例生成。在类级测试,本文将可能存在复杂结构的UML状态图转换为易测试的扩展的有限状态机(EFSM),介绍了EFSM的几种覆盖准则与基于EFSM生成测试序列的方法,采用分段梯度最优下降算法自动选取满足测试序列执行的测试数据。在集成级测试,针对顺序图中协作对象状态对交互的影响,构建了包含来自状态图和类图信息的带OCL约束的顺序图;针对集成测试序列数量容易膨胀的现象,用过程间受限控制流图(IRCFG)描述顺序图的消息间逻辑控制关系;并介绍了IRCFG的几种覆盖准则与基于IRCFG生成测试序列的方法,采用范畴-划分方法生成测试数据。基于以上分析研究,设计了一个基于UML的测试系统UMLTIE的模型,介绍了各子模块的功能,并实现了部分模块。