A New Interactive Fault Localization Method with Context Aware User Feedback

Ferenc Horváth, Victor Schnepper Lacerda, Árpád Beszédes, László Vidács and Tibor Gyimóthy
State-of-the-art fault localization tools provide a ranked list of suspicious code elements to aid the user in this debugging activity. Statistical (or Spectrum-Based) Fault Localization (SFL/SBFL) uses code coverage information of test cases and their execution outcomes to calculate the ranks. We propose an approach (called iFL) in which the developer interacts with the fault localization algorithm by giving feedback on the elements of the prioritized list. Contextual knowledge of the user about the current item (e. g., a statement) is exploited in the ranked list, and with this feedback larger code entities (e. g., a whole function) can be repositioned in the list. In our initial set of experiments, we evaluated the approach on the SIR benchmark using simulated users. Results showed significant improvements in fault localization accuracy: the ranking position of the buggy element was reduced by 72% on average, and iFL was able to double the number of faults that were positioned between 1-5.

Keywords: Statistical fault localization, spectrum based fault localization, testing, interactive debugging, user feedback.