中文

基于熵引导与统计语言谱的缺陷定位方法

软件工程 2018-02-21 v1

摘要

定位缺陷具有挑战性,但却是软件开发与维护阶段最重要的活动之一,因为不存在确定性的规则来识别所有类型的缺陷。现有的自动缺陷定位工具使用基于测试覆盖、预定义的缺陷模式或与缺陷报告的文本相似度等各种启发式方法,对可疑的程序元素进行排序。然而,由于这些技术依赖单一来源的信息,当相应来源信息不充分时往往表现不佳。例如,流行的基于谱的缺陷定位在编写不佳的测试套件下可能表现不好。在本文中,我们提出一种新方法 EnSpec,它使用代码熵来引导基于谱的缺陷定位,代码熵是一个基本表示由统计语言模型导出的代码自然性的度量。我们的直觉是,由于缺陷代码具有高熵,结合代码熵的基于谱的缺陷定位在区分缺陷行与非缺陷行方面将更鲁棒。我们在一个原型中实现了我们的想法,并在两个流行的公开基准上进行了广泛评估。我们的结果表明 EnSpec 优于最先进的基于谱的缺陷定位技术。

关键词

引用

@article{arxiv.1802.06947,
  title  = {Entropy Guided Spectrum Based Bug Localization Using Statistical Language Model},
  author = {Saikat Chakraborty and Yujian Li and Matt Irvine and Ripon Saha and Baishakhi Ray},
  journal= {arXiv preprint arXiv:1802.06947},
  year   = {2018}
}

备注

13 pages