基于果蝇算法的路径覆盖测试用例生成方法研究
发布时间:2020-07-17 17:09
【摘要】:伴随着软件应用范围和软件规模的不断扩展和增长,人们对高质量软件产品的需求热情持续上涨,软件测试因此倍受关注和重视。构建出正确且尽可能多覆盖的测试用例,才能够使得整个测试流程顺利开展。基于多种覆盖准则,再按照一定的步骤可自动生成测试用例,有研究表明,路径覆盖是一种非常重要的充分性覆盖准则。多种智能算法可适用于路径覆盖测试用例进化生成问题上。目前广泛使用在该领域内的算法存在着共同的缺点:程序复杂性高及易出现“早熟”现象。果蝇算法是一种新型的元启发式优化算法,目前已成为计算智能化这一研究领域的热门分支之一,在求解数学函数极值等领域得到优秀的应用。同时,目前该算法所被开发出的使用领域仍为少数,且算法在整体搜索能力方面有待改进。本文研究果蝇算法的改进方法,并使之运用在路径覆盖测试的用例自动生成问题上,主要包括以下三个方面:(1)针对单路径覆盖测试的相关研究。本文提出了基于混沌果蝇算法的路径覆盖测试用例生成技术研究。果蝇算法具有计算量小,程序简单,寻优精度高等优点,但同时也存在稳定性差等问题。针对以上挑战,引入混沌因子,对迭代过程中每次产生的最优个体进行混沌干扰操作,改善算法易“早熟”的问题;此外,通过对果蝇算法的调整,问题建模等设计,使之合理运用到路径覆盖测试中,并将其与同类方法进行了对比实验,验证该方法在解决此类问题上效率的提升。(2)针对多路径覆盖测试的相关研究。本文提出了基于PSO两个最优概念的果蝇算法的多路径覆盖测试用例生成技术研究。文中将PSO中的个体最优概念和全局最优概念融入到果蝇算法中,通过两个不同最优值代替果蝇算法的单一最优值,再结合果蝇算法的迭代过程进化,由此来提高果蝇算法的整体搜索能力;此外,通过对果蝇算法的调整,问题建模等设计,使之合理运用到多路径覆盖测试中,并将其与PSO的改进方法进行对比实验,验证了该方法在解决此类问题上效率的提升。(3)针对路径覆盖测试中适应度函数的相关研究。在适应度函数的考虑上,被广泛认可的是分支距离和层接近度两部分。在层接近度这一指标中,考虑到程序中含有多层嵌套依赖关系的情况,本文提出了一种增加权重系数的方法来区分不同节点的重要性,使之更加精准地计算适应度值,以此提升路径覆盖测试用例进化的收敛效率。最后,分析并总结了基于果蝇算法的路径覆盖测试问题的研究贡献,并指出路径覆盖测试和果蝇算法下一步的研究方向。
【学位授予单位】:安徽大学
【学位级别】:硕士
【学位授予年份】:2018
【分类号】:TP311.53
本文编号:2759705
【学位授予单位】:安徽大学
【学位级别】:硕士
【学位授予年份】:2018
【分类号】:TP311.53
【参考文献】
相关期刊论文 前10条
1 尤枫;赵瑞莲;吕珊珊;;基于输出域的测试用例自动生成方法研究[J];计算机研究与发展;2016年03期
2 丁蕊;董红斌;张岩;冯宪彬;;基于关键点路径的快速测试用例自动生成方法[J];软件学报;2016年04期
3 夏春艳;张岩;宋丽;;基于节点概率的路径覆盖测试数据进化生成[J];软件学报;2016年04期
4 吴川;巩敦卫;;基于路径相关性的回归测试数据进化生成[J];计算机学报;2015年11期
5 唐贤伦;周维;张衡;陈光丹;刘念慈;;一种基于多目标混沌PSO的机器人足球防守策略[J];系统仿真学报;2014年01期
6 姚香娟;巩敦卫;;基于目标语句占优关系的软件可测试性转化[J];电子学报;2013年12期
7 张岩;巩敦卫;;基于稀有数据扑捉的路径覆盖测试数据进化生成方法[J];计算机学报;2013年12期
8 张岩;巩敦卫;;基于搜索空间自动缩减的路径覆盖测试数据进化生成[J];电子学报;2012年05期
9 聂鹏;耿技;秦志光;;多路径粒子群优化自动测试用例生成算法[J];计算机集成制造系统;2012年01期
10 巩敦卫;张岩;;一种新的多路径覆盖测试数据进化生成方法[J];电子学报;2010年06期
相关博士学位论文 前1条
1 单锦辉;面向路径的测试数据自动生成方法研究[D];国防科学技术大学;2002年
本文编号:2759705
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2759705.html