论文部分内容阅读
软件测试是软件开发中极为重要的过程,通常,测试在整个软件开发过程中所占的比例约为40%,因此测试技术的发展对于缩短测试周期、降低维护成本、提高软件质量有重要意义。软件测试在软件开发过程中有着越来越重要的地位。它贯穿于软件定义与开发的整个期间即整个软件开发过程。而测试用例的生成设计又是软件测试过程中的难点和重点所在,而它的主要依据应该来自于软件需求和软件设计。统一建模语言(UML)是一种通用的图形化语言,在面向对象系统的分析和设计中,它已经成为事实上的工业标准。随着UML在软件界的应用日益广泛,基于UML的软件测试也日益引起人们的重视。现今,软件测试界对基于UML的软件测试研究主要集中在UML状态图和活动图,并提出了一些相应的分析方法。目前虽然面向对象的程序设计方法在全世界范围内得到广泛应用,但是相对而言对面向对象软件测试方面的研究却是非常滞后的。另一方面,目前基于UML模型的测试用例自动生成技术的研究主要集中在类的层次,而且大多数是以State Diagram为基础进行分析的。类级测试的一个重要方面就是对类状态的测试。基于状态的测试主要考察类的实例在其生命周期各个状态下的情况。这类方法的优势是可以充分借鉴成熟的有限状态自动机理论。类的基于状态的测试是目前面向对象软件测试技术研究的热点问题之一。这方面研究的基本方法之一就是利用传统的基于扩展有限状态机的状态测试方法,其核心问题是测试用例自动生成方法的研究。本文的研究主要针对三点,一是关于状态的研究,二是关于模型的研究,三是测试用例的创建及其对应用程序进行的测试的过程的研究。在总结类的基于状态测试的理论基础上,结合UML的状态图和类图模型,研究和探讨了状态识别(预测)方法,其中引入了状态不变量对状态进行预测;将UML模型转变成代码,使模型和代码保持一致性;测试用例的创建及其对应用程序进行的测试的过程。