Augmenting Automated Spectrum Based Fault Localization for Multiple Faults

Augmenting Automated Spectrum Based Fault Localization for Multiple Faults

Prantik Chatterjee, Jose Campos, Rui Abreu, Subhajit Roy

Proceedings of the Thirty-Second International Joint Conference on Artificial Intelligence
Main Track. Pages 3140-3148. https://doi.org/10.24963/ijcai.2023/350

Spectrum-based Fault Localization (SBFL) uses the coverage of test cases and their outcome (pass/fail) to predict the "suspiciousness'' of program components, e.g., lines of code. SBFL is, perhaps, the most successful fault localization technique due to its simplicity and scalability. However, SBFL heuristics do not perform well in scenarios where a program may have multiple faulty components. In this work, we propose a new algorithm that "augments'' previously proposed SBFL heuristics to produce a ranked list where faulty components ranked low by base SBFL metrics are ranked significantly higher. We implement our ideas in a tool, ARTEMIS, that attempts to "bubble up'' faulty components which are ranked lower by base SBFL metrics. We compare our technique to the most popular SBFL metrics and demonstrate statistically significant improvement in the developer effort for fault localization with respect to the basic strategies.
Keywords:
Knowledge Representation and Reasoning: KRR: Diagnosis and abductive reasoning
Multidisciplinary Topics and Applications: MDA: Software engineering