Saved in:
Bibliographic Details
Main Authors: Callaghan, Dylan, Fischer, Bernd
Format: Preprint
Published: 2023
Subjects:
Online Access:https://arxiv.org/abs/2306.09892
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866912361651109888
author Callaghan, Dylan
Fischer, Bernd
author_facet Callaghan, Dylan
Fischer, Bernd
contents Spectrum-based fault localization (SBFL) works well for single-fault programs but its accuracy decays for increasing fault numbers. We present FLITSR (Fault Localization by Iterative Test Suite Reduction), a novel SBFL extension that improves the localization of a given base metric specifically in the presence of multiple faults. FLITSR iteratively selects reduced versions of the test suite that better localize the individual faults in the system. This allows it to identify and re-rank faults ranked too low by the base metric because they were masked by other program elements. We evaluated FLITSR over method-level spectra from an existing large synthetic dataset comprising 75000 variants of 15 open-source projects with up to 32 injected faults, as well as method-level and statement-level spectra from a new dataset with 326 true multi-fault versions from the Defects4J benchmark set containing up to 14 real faults. For all three spectrum types we consistently see substantial reductions of the average wasted efforts at different fault levels, of 30%-90% over the best base metric, and generally similarly large increases in precision and recall, albeit with larger variance across the underlying projects. For the method-level real faults, FLITSR also substantially outperforms GRACE, a state-of-the-art learning-based fault localizer.
format Preprint
id arxiv_https___arxiv_org_abs_2306_09892
institution arXiv
publishDate 2023
record_format arxiv
spellingShingle Improving Spectrum-Based Localization of Multiple Faults by Iterative Test Suite Reduction
Callaghan, Dylan
Fischer, Bernd
Software Engineering
Spectrum-based fault localization (SBFL) works well for single-fault programs but its accuracy decays for increasing fault numbers. We present FLITSR (Fault Localization by Iterative Test Suite Reduction), a novel SBFL extension that improves the localization of a given base metric specifically in the presence of multiple faults. FLITSR iteratively selects reduced versions of the test suite that better localize the individual faults in the system. This allows it to identify and re-rank faults ranked too low by the base metric because they were masked by other program elements. We evaluated FLITSR over method-level spectra from an existing large synthetic dataset comprising 75000 variants of 15 open-source projects with up to 32 injected faults, as well as method-level and statement-level spectra from a new dataset with 326 true multi-fault versions from the Defects4J benchmark set containing up to 14 real faults. For all three spectrum types we consistently see substantial reductions of the average wasted efforts at different fault levels, of 30%-90% over the best base metric, and generally similarly large increases in precision and recall, albeit with larger variance across the underlying projects. For the method-level real faults, FLITSR also substantially outperforms GRACE, a state-of-the-art learning-based fault localizer.
title Improving Spectrum-Based Localization of Multiple Faults by Iterative Test Suite Reduction
topic Software Engineering
url https://arxiv.org/abs/2306.09892