VFL: Variable-based fault localization

Jeongho Kim, Jindae Kim, Eunseok Lee

Research output: Contribution to journalArticlepeer-review

22 Scopus citations

Abstract

Context: Fault localization is one of the most important debugging tasks. Hence, many automatic fault localization techniques have been proposed to reduce the burden on developers for such tasks. Among them, Spectrum-based Fault Localization (SFL) techniques leverage coverage information and localize faults based on the coverage difference between the failed and passed test cases. Objective: However, such SFL techniques cannot localize faults effectively when coverage differences are not clear. To address this issue and improve the fault localization performance of the SFL techniques, we propose a Variable-based Fault Localization (VFL) technique. Method: The VFL technique identifies suspicious variables and uses them to generate a ranked list of suspicious source code lines. Since it only requires additional information about variables that are also available in the SFL techniques, the proposed technique is lightweight and can be used to improve the performance of existing the SFL techniques. Results: In an evaluation with 224 real Java faults and 120 C faults, the VFL technique outperforms the SFL techniques using the same similarity coefficient. The average Exam scores of the VFL techniques are reduced by more than 55% compared to the SFL techniques, and the VFL techniques localize faults at a lower rank than the SFL techniques for about 73% of the 344 faults. Conclusion: We proposed a novel variable-based fault localization technique for more effective debugging. The VFL technique has better performance than the existing techniques and the results were more useful for actual fault localization tasks. In addition, this technique is very lightweight and scalable, so it is very easy to collaborate with other fault localization techniques.

Original languageEnglish
Pages (from-to)179-191
Number of pages13
JournalInformation and Software Technology
Volume107
DOIs
StatePublished - Mar 2019

Keywords

  • Software debugging
  • Software testing
  • Spectrum-based fault localization
  • Suspicious variable
  • Variable-based fault localization

Fingerprint

Dive into the research topics of 'VFL: Variable-based fault localization'. Together they form a unique fingerprint.

Cite this