An empirical study of the factors that reduce the effectiveness of coverage-based fault localization

  • Authors:
  • Wes Masri;Rawad Abou-Assi;Marwa El-Ghali;Nour Al-Fatairi

  • Affiliations:
  • American Univ. of Beirut, Beirut, Lebanon;American Univ. of Beirut, Beirut, Lebanon;American Univ. of Beirut, Beirut, Lebanon;American Univ. of Beirut, Beirut, Lebanon

  • Venue:
  • Proceedings of the 2nd International Workshop on Defects in Large Software Systems: Held in conjunction with the ACM SIGSOFT International Symposium on Software Testing and Analysis (ISSTA 2009)
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Coverage-based fault localization techniques typically assign a suspiciousness rank to the statements in a program following an analysis of the coverage of certain types of program elements by the failing and passing runs. The effectiveness of existing techniques has been limited despite the fact that researchers have explored various suspiciousness metrics, ranking strategies, and types of program elements. This work aims at identifying the factors that impair coverage-based fault localization. Specifically, we conducted an empirical study in which we assessed the prevalence of the following scenarios: 1) the condition for failure is met but the program does not fail; 2) the faulty statement is executed but the program does not fail; 3) the failure is correlated with a combination of more than one program element possibly of different types; 4) a large number of program elements occurred in all failing runs but in no passing runs. The study was conducted using 148 seeded versions of ten Java programs which included three releases of NanoXML, and seven programs from the Siemens test suite that were converted to Java. The results showed that most of the above scenarios occur frequently.