基于损失函数的单元测试用例自动化生成算法研究与实现 |
| |
作者姓名: | 傅瑞华 李凡 王俊峰 |
| |
作者单位: | 四川大学计算机学院,四川大学计算机学院,四川大学计算机学院 |
| |
基金项目: | 国家重点研发计划项目(2018YFB0804503, 2019QY1400);国家自然科学基金项目(U20A20161, U1836103);基础加强计划项目(2019-JCJQ-ZD-113) |
| |
摘 要: | 软件测试是软件开发过程中最为耗时的阶段之一.通过自动执行大量的测试用例,可以高效、及时地发现软件程序中潜在的错误,这是提高大中型软件开发质量的重要技术发展趋势.目前较多的元启发式优化算法已经能够实现测试用例的自动生成,但测试效率较低且开销较大,所以如何使得生成的测试用例在数量较少的情况下覆盖尽可能多的目标,就成为自动化测试用例生成中的核心技术问题.本文提出一种基于损失函数的单元测试用例自动化生成算法(LFGA),在遗传算法的执行过程中,根据测试用例种群的路径覆盖情况,动态改变后续种群的分布,保证整体数据分布的平衡性.并利用分支信息优化自适应交叉变异算子,自动生成规模尽可能小且高覆盖的有效测试用例集.实验结果表明,相比于已有的自动生成测试用例方法,较好地解决了传统模型中初值依赖、收敛早熟、局部寻优能力滞后等缺陷,保证了生成的测试用例平均覆盖率达到95%,提升了搜索效率及数据使用效率.
|
关 键 词: | 软件测试 自动生成 损失函数 自适应 改进遗传算法 |
收稿时间: | 2021-10-03 |
修稿时间: | 2021-12-17 |
|
| 点击此处可从《四川大学学报(自然科学版)》浏览原始摘要信息 |
|
点击此处可从《四川大学学报(自然科学版)》下载全文 |
|