MCFL: Improving Fault Localization by Differentiating Missing Code and Other Faults

  • Zijie Li
  • , Long Zhang
  • , Zhenyu Zhang
  • , Bo Jiang

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Software testing is a popular practice to evaluate the software quality, and debugging is one of the most time-consuming tasks. In the last decades, spectrum-based fault localization (SBFL) techniques have been extensively studied and empirically shown effective in locating faults in a program. However, recent researches demonstrated that the accuracy of an SBFL technique may decrease when it is applied to a program containing code-omission faults. In this paper, we present a novel approach - MCFL. It models the behavior of code omission, embeds code-omission probes into programs to identify potential locations of missing code, captures spectra of program execution, and evaluates the suspiciousness of program entities being related to faults. Different from existing SBFL techniques, MCFL synthesizes a ranked list consisting of both suspicious statements and suspicious code-omission sites, which reflect the probability of a normal statement being faulty and the probability of missing code at specific positions in the program, respectively. We conducted a controlled experiment to compare the fault-localization accuracy of MCFL with those of four popular SBFL techniques. Six real-world projects from the dataset Defects4J are used as the experiment subjects. The experiment result showed that (i) MCFL outperforms the experimented SBFL techniques on most subjects, and on average has a 17.47% improvement; (ii) For more than 60% of the faults, MCFL successfully tells whether they are due to code omission.

Original languageEnglish
Title of host publicationProceedings - 2020 IEEE 44th Annual Computers, Software, and Applications Conference, COMPSAC 2020
EditorsW. K. Chan, Bill Claycomb, Hiroki Takakura, Ji-Jiang Yang, Yuuichi Teranishi, Dave Towey, Sergio Segura, Hossain Shahriar, Sorel Reisman, Sheikh Iqbal Ahamed
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages943-952
Number of pages10
ISBN (Electronic)9781728173030
DOIs
StatePublished - Jul 2020
Event44th IEEE Annual Computers, Software, and Applications Conference, COMPSAC 2020 - Virtual, Madrid, Spain
Duration: 13 Jul 202017 Jul 2020

Publication series

NameProceedings - 2020 IEEE 44th Annual Computers, Software, and Applications Conference, COMPSAC 2020

Conference

Conference44th IEEE Annual Computers, Software, and Applications Conference, COMPSAC 2020
Country/TerritorySpain
CityVirtual, Madrid
Period13/07/2017/07/20

Keywords

  • Software testing
  • code omission
  • spectrum-based fault localiza tion (SBFL)

Fingerprint

Dive into the research topics of 'MCFL: Improving Fault Localization by Differentiating Missing Code and Other Faults'. Together they form a unique fingerprint.

Cite this