首页> 中文学位 >基于AR规则遗传算法的全路径测试用例自动生成方法研究
【6h】

基于AR规则遗传算法的全路径测试用例自动生成方法研究

代理获取

摘要

软件测试是现阶段保障软件质量的重要手段。由于软件规模越来越大,导致软件测试需要耗费巨大的人力、物力和时间,因此为了保证软件的开发质量同时降低软件开发的成本急需提高软件测试的自动化程度。测试用例的人工生成已经不能满足现代软件开发的需要,使得测试用例自动生成成为研究热点。软件测试中的诸如语句覆盖、路径覆盖等问题可以归结为面向路径的测试用例生成问题。目前,对单路径测试用例自动生成方法的研究较多,但全路径的研究还正处于起步阶段。全路径是程序的所有可能路径,可以描述为:给定一个程序P和P中一条路径W,设P的输入空间为D,求X?D,使得P以X为输入运行,所经过的路径W如果能对程序的所有可能的路径进行测试则称为全路径测试,全路径测试能比较全面的测试该程序的所有可执行路径,所以求解自动生成基于全路径测试的用例问题,可以使将软件测试的效率和质量显著地提高。
  本文提出了一个基于AR(Analysis Rules)规则的全路径测试用例自动生成方法。这个方法主要由:词法和语法分析组件过程、程序解析过程、优化过程和结果分析四部分组成。论文对程序解析过程和优化过程的功能和算法实现进行了较详细地讨论。程序解析过程的工作主要有:一是对源代码进行词法和语法分析;二是运用AR规则对源程序进行逐行解析,按照关键字分析程序的结构并插装相应的节点,插装的目的是记录执行的语句,得到有向无环图和插装后的目标函数。通过AR规则能够把源程序代码进行解析生成除过源代码回路的有向无环图,使得源程序的路径获得得到简化。优化过程的工作主要有三个:一是通过前面获得的有向无环图上获得可执行的路径,并且这些路径都不重复,把获得的路径存放在所存储的路径集合里;二是将需要测试的数据放进静态解析后的源程序里,并且执行程序,这样可以得到程序实际运行的路径;三是计算已执行路径的相似度,在本工作中,运用遗传算法去优化测试用例集选择测试用例集的方案。与事先规定的阈值进行比较,若果满足,则表明此次选择的测试用例是合适的,如果不满足,那么继续使用遗传算法进行调整。
  实验结果表明:使用本文提出的算法测试用例自动生成的效果明显优于基本遗传算法等测试用例自动生成算法。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号