基于UML的软件测试用例自动生成技术的研究

基于UML的软件测试用例自动生成技术的研究

论文摘要

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

论文目录

  • 摘要
  • Abstract
  • 目录
  • 绪论
  • 一、课题研究背景、目的及意义
  • 二、国内外研究现状
  • 三、课题研究的主要内容及意义
  • 第一章 软件测试简介
  • 1.1 软件测试的基本概念
  • 1.2 软件测试策略
  • 1.2.1 静态测试
  • 1.2.2 动态测试
  • 1.2.3 黑盒测试
  • 1.2.4 白盒测试
  • 1.3 软件测试中的关键问题
  • 1.4 课题的主要研究目标
  • 本章小结
  • 第二章 面向对象软件测试的特点和现状
  • 2.1 面向对象软件测试
  • 2.1.1 面向对象方法的出现
  • 2.1.2 面向对象技术的应用
  • 2.2 面向对象程序的特点及其对软件测试的影响
  • 2.2.1 封装对测试的影响
  • 2.2.2 继承对测试的影响
  • 2.2.3 多态性对测试的影响
  • 2.3 面向对象软件测试的层次划分及其内容
  • 2.3.1 类测试
  • 2.3.2 类簇测试
  • 2.3.3 系统测试
  • 2.4 面向对象软件测试的覆盖标准
  • 本章小结
  • 第三章 UML及其建模技术
  • 3.1 统一建模语言UML简介
  • 3.2 UML的发展
  • 3.3 UML模型的体系结构
  • 3.4 UML建模机制
  • 3.5 简述UML的图
  • 3.5.1 类图
  • 3.5.2 状态图建模技术
  • 本章小结
  • 第四章 可视化建模工具—Rational Rose
  • 4.1 Rational Rose的特点
  • 4.2 Rational Rose的建模环境概述
  • 4.3 在Rose的环境中建模的过程
  • 4.4 Rose建模环境的外部接口
  • 本章小结
  • 第五章 基于UML的类测试用例生成
  • 5.1 类的基于状态的测试
  • 5.2 有限状态机
  • 5.3 测试需求(覆盖标准)
  • 5.4 状态识别(预测)
  • 5.4.1 基于扩展有限状态机常用的预测方法
  • 5.4.2 类的实例对象的状态预测
  • 5.5 将UML模型转变成代码
  • 5.6 测试工具JUnit简介
  • 5.6.1 Junit的框架组成
  • 5.6.2 Junit中常用的接口和类
  • 5.7 测试用例的创建及其对应用程序的测试
  • 本章小结
  • 结论
  • 参考文献
  • 攻读硕士学位期间发表的学术论文
  • 致谢
  • 相关论文文献

    标签:;  ;  ;  ;  

    基于UML的软件测试用例自动生成技术的研究
    下载Doc文档

    猜你喜欢