paperbot · PL 论文追踪

全部论文 待读 收藏

P2 How Useful is Code Change Information for Fault Localization in Continuous Integration?

在持续集成中,代码变更信息对故障定位有多大用处?
ASE Proceedings of the 37th IEEE/ACM International Conference on Automated Software Engineering2022匹配度 2/10 · 该论文属于软件工程中的故障定位(SBFL/变更信息)方向,与用户画像的核心关切(PL↔AI 交叉、浮点程序分析、贝叶斯程序分析)没有直接关联,也未涉及 LLM/Agent 或静态分析技术。仅在“程序分析/调试”这一大领域上存在边缘交集。引用 11 inbox
An Ran Chen, Tse-Hsun (Peter) Chen, Junjie Chen
crossref: 2026-09-12

AI 速览

一句话:提出三种基于代码与覆盖率变更的故障定位技术,在CI场景下优于传统SBFL,并可增强Ochiai。

持续集成中代码频繁合入并测试,能提供细粒度变更信息,但传统基于频谱的故障定位(SBFL)未利用这些信息。论文提出将代码变更与覆盖率变更信息融入故障定位:代码变更揭示故障引入点,覆盖率变更限制搜索空间。基于此提出三种基于变更的故障定位技术,并在7个软件系统的192个真实故障上与Ochiai比较。结果表明三种技术均优于Ochiai,平均MAP提升7%–23%,MRR提升17%–24%;与Ochiai结合后,平均MAP和MRR最高可提升53%和52%。

问题
传统SBFL未利用CI中细粒度的代码变更与覆盖率变更信息,难以进一步提升故障定位效果。
方法
提出三种基于变更的故障定位技术,将代码变更和覆盖率变更信息纳入定位过程,并可与Ochiai集成。
评估
在7个软件系统的192个真实故障上评估,与Ochiai对比MAP/MRR,并测试与Ochiai结合后的性能提升。
原文摘要(Abstract)

Continuous integration (CI) is the process in which code changes are automatically integrated, built, and tested in a shared repository. In CI, developers frequently merge and test code under development, which helps isolate faults with finer-grained change information. To identify faulty code, prior research has widely studied and evaluated the performance of spectrum-based fault localization (SBFL) techniques. While the continuous nature of CI requires the code changes to be atomic and presents fine-grained information on what part of the system is being changed, traditional SBFL techniques do not benefit from it. To overcome the limitation, we propose to integrate the code and coverage change information in fault localization under CI settings. First, code changes show how faults are introduced into the system, and provide developers with better understanding on the root cause. Second, coverage changes show how the code coverage is impacted when faults are introduced. This change information can help limit the search space of code coverage, which offers more opportunities for improving fault localization techniques. Based on the above observations, we propose three new change-based fault localization techniques, and compare them with Ochiai, a commonly used SBFL technique. We evaluate these techniques on 192 real faults from seven software systems. Our results show that all three change-based techniques outperform Ochiai on the Defects4J dataset. In particular, the improvement varies from 7% to 23% and 17% to 24% for average MAP and MRR, respectively. Moreover, we find that our change-based fault localization techniques can be integrated with Ochiai, and boost its performance by up to 53% and 52% for average MAP and MRR, respectively.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@inproceedings{paperbot7233,
  title = {How Useful is Code Change Information for Fault Localization in Continuous Integration?},
  author = {An Ran Chen and Tse-Hsun (Peter) Chen and Junjie Chen},
  booktitle = {ASE},
  year = {2022},
  doi = {10.1145/3551349.3556931}
}