Localizing failure-inducing code is essential for software debugging. Manual fault localization can be quite tedious, error-prone, and time-consuming. Therefore, a huge body of research efforts have been dedicated to automated fault localization. Spectrum-based fault localization, the most intensively studied fault localization approach based on test execution information, may have limited effectiveness, since a code element executed by a failed tests may not necessarily have impact on the test outcome and cause the test failure. To bridge the gap, mutation-based fault localization has been proposed to transform the programs under test to check the impact of each code element for better fault localization. However, there are limited studies on the effectiveness of mutation-based fault localization on sufficient number of real bugs. In this paper, we perform an extensive study to compare mutation-based fault localization techniques with various state-of-the-art spectrum-based fault localization techniques on 357 real bugs from the Defects4J benchmark suite. The study results demonstrate the effectiveness of mutation-based fault localization, as well as firstly revealing a number of guidelines for further improving the mutation-based fault localization. Based on the learnt guidelines, we further transform test outputs/messages and test code to obtain various mutation information. Then, we propose TraPT, an automated Learning-to-Rank technique to fully explore the obtained mutation information for effective fault localization. The experimental results show that TraPT localizes at least 62.79% more bugs within Top-1 than state-of-the-art spectrum or mutation based techniques when using the default setting of LIBSVM.
Thu 26 OctDisplayed time zone: Tijuana, Baja California change
15:30 - 17:22 | |||
15:30 22mTalk | A Solver-Aided Language for Test Input Generation OOPSLA Talia Ringer University of Washington, Dan Grossman University of Washington, Daniel Schwartz-Narbonne Amazon, n.n., Serdar Tasiran Amazon, n.n. DOI | ||
15:52 22mTalk | Automated Testing of Graphics Shader Compilers OOPSLA Alastair F. Donaldson Imperial College London, Hugues Evrard Imperial College London, UK, Andrei Lascu Imperial College London, Paul Thomson Imperial College London DOI | ||
16:14 22mTalk | Bounded Exhaustive Test-Input Generation on GPUs OOPSLA Ahmet Celik University of Texas at Austin, USA, Sreepathi Pai University of Rochester, Sarfraz Khurshid University of Texas at Austin, Milos Gligoric University of Texas at Austin DOI | ||
16:37 22mTalk | Transforming Programs and Tests in Tandem for Fault Localization OOPSLA DOI | ||
16:59 22mTalk | Type Test Scripts for TypeScript Testing OOPSLA DOI |