计算机工程与应用 ›› 2020, Vol. 56 ›› Issue (21): 231-236.DOI: 10.3778/j.issn.1002-8331.1908-0142
谢章伟,崔展齐,郑丽伟,张志华
XIE Zhangwei, CUI Zhanqi, ZHENG Liwei, ZHANG Zhihua
摘要:
动态符号执行是一种有效的软件测试方法,但由于受到约束求解器求解能力的限制,在面对较为复杂的程序和路径条件时,动态符号执行的路径覆盖率还有待提升。针对上述问题,提出了一种遗传算法辅助的动态符号执行测试方法,并基于此方法实现了原型工具JDart-Ga。该方法结合遗传算法的优势,生成约束求解器无法求解的约束条件对应测试输入,从而提升动态符号执行的路径覆盖率。实验结果表明,在测试存在动态符号执行无法覆盖路径的3个实验对象时,所提出方法的路径覆盖率与JDart相比分别提升了16%至23%。