当前位置:主页 > 科技论文 > 软件论文 >

多目标路径覆盖进化测试的一种改进策略

发布时间:2021-01-15 06:25
  测试数据是软件测试输入的来源,可靠的测试数据能快速有效地得到需要的结果,否则将会造成测试效率低下,导致恶性循环测试。因此,测试数据生成问题的关键是如何获得高效高质量的测试数据。研究更高效的测试方法是获得优质测试数据的关键,不同的研究对象,采取的测试方法会有较大的差异。面向路径覆盖生成测试数据是一类典型的测试方法,其研究对象是程序的执行路径,根据路径生成满足条件的测试数据。按照复杂性进行划分,路径覆盖测试问题可分为单目标路径覆盖问题和多目标路径覆盖问题,二者都是根据程序路径生成测试数据的测试方法。遗传算法在路径覆盖测试中的应用很广,常用于搜索满足条件的测试数据。本文在单目标路径覆盖问题和多目标路径覆盖问题中均采用遗传算法,并提出了相应的测试数据生成方法。针对目前众多的路径覆盖方法较少考虑被测程序中各语句执行难度差异性的问题,提出接触向量的概念,将其与层接近度思想结合,引出接触式层接近度方法,用于生成测试数据。在设计适应度函数时将该方法作为其中的一部分,加速测试数据的生成,提高目标路径测试数据生成的效率。提出一种改进的个体信息共享的多目标路径覆盖方法,该方法对个体共享策略进行了改变,使用接... 

【文章来源】:江西财经大学江西省

【文章页数】:60 页

【学位级别】:硕士

【部分图文】:

多目标路径覆盖进化测试的一种改进策略


遗传算法基本流程

时间满意度,插件,点元


实现插件需要多个插件扩展点之间进行配合,并相互绑定,绑定过程通d 唯一指定。通常情况下一个 Menu 对应一个 Command,一个 Command Handler,这样通过 Menu 就可以与 Handler 进行映射,完成插件的基但扩展点与对应的扩展点元素之间也可以是一对多的关系,即一个扩展个扩展点元素。因此可以通过一个扩展点,利用扩展点元素实现多种插本节插件开发使用 Windows 7 作为开发所用的操作系统,开发工具ipse 或 Myeclipse,由于 Java 开发需要 Jdk 支持,所以需要安装 Jdk,这dk1.8。安装好 Jdk 后,配置相关环境变量。本次插件开发,插件界面布于 Eclipse 的图形界面工具 WindowBuilder。实现的插件如图 2 所示,其ut the target path 输入框中需要填写目标路径,目标路径是一个由 1 和 0符串,1 代表该位置节点处于已覆盖状态,0 代表该节点未被覆盖。设路径和种群数后,点击 genarate test case 按钮,插件开始执行,执行结方出现。

目标路径,覆盖路径,平均时间


若染色体长度变大,难度还会递增。最难覆盖的目标路径显然是生成满足等边三角形条件的输入数据,这也是为什么1p 需要种群经过几千代的进化才被覆盖的原因。难覆盖的目标路径对算法生成测试数据的效率有很大的影响,它可能会让一个本可以快速获得相应测试数据的过程变得极为缓慢。前文中使用三角形分类程序作为被测程序,将本章方法和文献[35]进行对比实验时,发现目标路径1p 是难覆盖路径,覆盖这条目标路径花费的时间比其它所有目标路径的时间都多,大大的影响了算法的求解效率。为了验证本章方法针对难覆盖的目标路径的处理措施的有效性,方便观察本章方法处理难覆盖目标路径前后与文献[35]的对比效果,进行以下两方面的实验。首先,进行默认情况下的实验(未针对难覆盖目标路径进行处理),分别执行本章方法和文献[35]的方法,对实验结果进行对比,分 4 批执行,每批重复执行10 次获取平均执行时间,实验结果见图 4-2。

【参考文献】:
期刊论文
[1]基于模型检测技术的变异测试用例生成方法[J]. 杨红,洪玫,屈媛媛.  计算机科学. 2018(S2)
[2]一种基于改进遗传算法的路径测试用例生成方法[J]. 包晓安,熊子健,张唯,吴彪,张娜.  计算机科学. 2018(08)
[3]基于软件节点重要性的集成测试序列生成方法[J]. 王莹,于海,朱志良.  计算机研究与发展. 2016(03)
[4]基于输出域的测试用例自动生成方法研究[J]. 尤枫,赵瑞莲,吕珊珊.  计算机研究与发展. 2016(03)
[5]基于策略推导的访问控制漏洞测试用例生成方法[J]. 文硕,许静,苑立英,李晓虹,徐思涵,司冠南.  计算机学报. 2017(12)
[6]基于节点概率的路径覆盖测试数据进化生成[J]. 夏春艳,张岩,宋丽.  软件学报. 2016(04)
[7]面向条件判定覆盖的线性拟合制导测试生成[J]. 汤恩义,周岩,欧建生,陈鑫.  软件学报. 2016(03)
[8]基于懒符号执行的软件脆弱性路径求解算法[J]. 秦晓军,周林,陈左宁,甘水滔.  计算机学报. 2015(11)
[9]软件测试架构浅析[J]. 刘支援,郭永振.  电子科学技术. 2015(04)
[10]一种改进的程序不可达路径静态检测方法[J]. 喻琴仪,罗扬,杨浩.  南华大学学报(自然科学版). 2014(04)

博士论文
[1]复杂软件测试数据进化生成理论及应用[D]. 姚香娟.中国矿业大学 2011
[2]测试数据自动生成技术研究[D]. 史亮.东南大学 2006



本文编号:2978407

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2978407.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户12fb2***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com