基于遗传蚂蚁融合算法的测试用例生成研究

基于遗传蚂蚁融合算法的测试用例生成研究

论文摘要

随着计算机处理对象越来越复杂,所要求软件的功能就相应地要越来越强,软件的质量和可靠性尤为重要,软件测试是其重要保障。而软件测试是软件开发过程中的一个至关重要的环节,软件测试用例是软件测试的基本所在。测试用例的选择与自动生成是软件测试难点之一。同时,在测试用例的生成过程中,每个测试需求一般都会产生相应的测试用例集,而这些测试用例集可能存在大量的冗余,需要对其进行简化。而智能算法就可以对数量庞大的测试用例进行优化生成,显示其独特的优势和高效性。本文就此展开了研究。本文首先采用了“结构树”概念用来表示软件的结构,以结构树路径覆盖准则为基础,从参数编码策略、覆盖准则表和适应度函数构造以及关键算子设定等方面,研究了遗传蚂蚁融合算法用于测试用例自动生成,并以三角形分类判断软件为例进行仿真实验,对参数设置不同值下生成的测试用例集进行分析。其次,将简单遗传算法、改进的免疫遗传算法、模拟退火遗传算法三种算法用于测试用例自动生成,并与遗传蚂蚁融合算法重点从测试覆盖率、收敛情况、用例生成数目等方面进行比较。结果表明,遗传蚂蚁融合算法比其它有优势。最后,本文分析了已有的测试用例集约简方法,在贪心算法G和H算法的基础上,引入测试用例的测试贡献度大小思想,探索了一种测试用例集最小化算法(Minimization ofTest Suite,MTS),将该算法应用于简化基于遗传蚂蚁融合算法的三角形分类判断软件生成的测试用例集,简化后得到最小测试用例集。通过实例分析,验证了该算法的有效性。

论文目录

  • 摘要
  • Abstract
  • 1 绪论
  • 1.1 立题背景和意义
  • 1.2 国内外的研究现状和存在问题
  • 1.2.1 研究现状
  • 1.2.2 存在问题
  • 1.3 本文研究主要内容
  • 1.4 论文结构
  • 2 遗传蚂蚁融合算法
  • 2.1 CG3A算法基本原理
  • 2.2 CG3A算法特点
  • 2.3 CG3A算法实现
  • 2.4 CG3A算法马尔可夫收敛性分析
  • 2.5 本章小结
  • 3 基于CG3A算法的测试用例自动生成
  • 3.1 软件测试充分性准则
  • 3.2 软件测试覆盖准则
  • 3.3 CG3A算法生成测试用例的几个关键问题
  • 3.3.1 参数编码策略
  • 3.3.2 覆盖准则表和适应度函数构造
  • 3.3.3 CG3A算法关键算子设定
  • 3.4 CG3A算法的测试用例生成
  • 3.4.1 实验设计
  • 3.4.2 CG3A算法的测试用例生成
  • 3.5 本章小结
  • 4 测试用例生成的智能算法比较分析
  • 4.1 其它三种智能算法
  • 4.1.1 SGA基本原理特点和实现
  • 4.1.2 IIGA基本原理特点和实现
  • 4.1.3 SAGA基本原理特点和实现
  • 4.2 其它三种智能算法关键算子设定
  • 4.3 实验设计
  • 4.4 仿真实验
  • 4.5 本章小结
  • 5 一种测试用例集最小化生成算法探索
  • 5.1 引言
  • 5.2 基本概念和术语
  • 5.3 测试用例集最小化生成算法
  • 5.3.1 现有方法及存在问题
  • 5.3.2 一种测试用例集最小化生成算法探索
  • 5.4 实例分析
  • 5.5 MTS算法验证
  • 5.6 本章小结
  • 6 总结与展望
  • 6.1 总结
  • 6.2 下一步工作展望
  • 致谢
  • 参考文献
  • 攻读硕士学位期间发表论文
  • 相关论文文献

    标签:;  ;  ;  ;  ;  

    基于遗传蚂蚁融合算法的测试用例生成研究
    下载Doc文档

    猜你喜欢