- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
软件学报ISSN1000-9825,CODENRUXUEWE-mail:jos@
JournalofSoftware,2024,35(7):3093−3114[doi:10.13328/ki.jos.007113]
©中国科学院软件研究所版权所有.Tel:+86-10
∗
基于规则与学习的变异技术对比研究
1,21,231,2
贡志豪,陈逸洲,陈俊洁,郝丹
1(高可信软件技术教育部重点实验室(北京大学),北京100871)
2(北京大学计算机学院,北京100871)
3(天津大学智能与计算学部,天津300350)
通信作者:郝丹,E-mail:haodan@
摘要:变异测试是一种有效的软件测试技术,通过生成变异体来模拟软件缺陷,帮助提升现有测试套件的缺陷
检测能力.变异体的质量对于变异测试的有效性具有显著影响.传统的变异测试方法通常采用人工设计的基于语
法规则的变异算子生成变异体,并已取得一定的研究成果.近年来,许多研究开始结合深度学习技术,通过学习
开源项目历史代码生成变异体.目前,该新方法在变异体生成方面取得了初步的成果.基于语法规则和基于学习
的两种变异技术,其机理不同,但其目标均是通过生成变异体来提高测试套件的缺陷检测能力,因此,全面比较
这两种变异技术对于变异测试及其下游任务至关重要.针对这一问题,设计实现了一项针对基于语法规则和基于
学习的变异技术的实证研究,旨在了解不同机理的变异技术在变异测试任务上的性能以及生成的变异体在程序语
义上的差异性.具体地,以Defect4Jv1.2.0数据集为实验对象,比较以MAJOR和PIT为代表的基于语法规则的变
异技术和以DeepMutation、μBERT和LEAM为代表的基于深度学习的变异技术.实验结果表明:基于规则与学习
的变异技术均可有效支持变异测试实践,但MAJOR的测试效果最优,能够检测85.4%的真实缺陷.在语义表示
上,MAJOR具有最强的语义代表能力,基于其构造的测试套件能够杀死其余变异技术生成的超过95%占比的变异
体.在缺陷表征上,两类技术均具有独特性.
关键词:变异测试;变异分析;实证研究;缺陷检测
中图法分类号:TP311
中文引用格式:贡志豪,陈逸洲,陈俊洁,郝丹.基于规则与学习的变异技术对比研究.软件学报,2024,35(7):3093–3114.
/1000-9825/7113.htm
英文引用格式:GongZH,ChenYZ,ChenJJ,HaoD.ComparisonResearchonRule-basedandLearning-basedMutationTechniques.
RuanJianXueBao/JournalofSoftware,2024,35(7):3093−3114(inChinese)./1000-9825/7113.htm
ComparisonResearchonRule-basedandLearning
文档评论(0)