中文

在使用插入变异算子时结合句法与语义相似度对补丁排序的影响

软件工程 2023-02-09 v1

摘要

补丁排序根据候选补丁正确的可能性对其进行排序。更有可能成为缺陷修复的修复成分,具有高度的上下文相似性。最近一项研究表明,结合句法相似度与语义相似度来刻画上下文相似性,能够在补丁排序中取得更好效果。在本研究中,我们评估了在使用插入(Insertion)变异算子时,结合句法与语义特征对补丁排序的影响。本研究考察了句法与语义特征的不同组合对补丁排序的结果。作为一项试点研究,该方法使用谱系相似度衡量语义相似度,并使用归一化最长公共子序列、归一化编辑距离、余弦相似度和Jaccard相似系数来刻画句法相似度。它还考虑反模式(Anti-Pattern)以过滤掉不正确的似真补丁。句法与语义相似度的结合能在很大程度上缩减搜索空间。此外,该方法在不正确似真补丁之前生成缺陷的修复。我们在IntroClassJava基准上使用插入变异算子评估了这些技术,并成功在不正确似真补丁之前为6个缺陷生成了修复。因此,结合先前研究,这种结合句法与语义相似度的方法能够从该基准中总计解决25个缺陷,据我们所知,这一解决缺陷数量超过其他任何方法。所生成修复的正确性进一步使用CapGen公开可用结果进行了检验,对于这些生成的修复,该方法达到了100%的精确率。

关键词

引用

@article{arxiv.2302.03730,
  title  = {Impact of Combining Syntactic and Semantic Similarities on Patch Prioritization while using the Insertion Mutation Operators},
  author = {Mohammed Raihan Ullah and Nazia Sultana Chowdhury and Fazle Mohammed Tawsif},
  journal= {arXiv preprint arXiv:2302.03730},
  year   = {2023}
}