Title :
Locating Faulty Code Using Failure-Causing Input Combinations in Combinatorial Testing
Author :
Chunyan Ma ; Yifei Zhang ; Jie Liu ; Meng Zhao
Author_Institution :
Dept. of Software Eng., Northwestern Polytech. Univ., Xi´an, China
Abstract :
The high cost of locating faults in programs has motivated the development of techniques that assist in fault localization by automating part of the process of searching for faults. A method to automatically locate faulty code using failure-causing input combination in combinatorial testing is firstly presented in this paper. Firstly, four types of fault locations are figured out by using parameters in the combination to understand the context of the fault. Secondly, based on the four types of fault locations, an algorithm is proposed to isolate candidate faulty code and obtain cause-effect chains of the failure by means of changing values of parameters in the combination. Finally, experiments are carried out on 92 variations of four programs using the known measurement which is improved in search order and search space of code. Results show that the user could avoid searching over 77% of the program in order to localize faults at code-level. Our method has successfully extended the original method of rooting the fault via combinatorial testing from the input-level to the code-level. It could be easily applicable and broadly practicable in combinatorial testing, and greatly narrow down the search focus on code-level faults.
Keywords :
failure analysis; fault location; program debugging; program testing; code-level faults; combinatorial testing; failure-causing input combinations; fault localization; fault location; faulty code location; Benchmark testing; Context; Debugging; Fault location; Software engineering; cause-effect chain; combinatorial testing; failure-causing input combinations; fault localization;
Conference_Titel :
Software Engineering (WCSE), 2013 Fourth World Congress on
Conference_Location :
Hong Kong
Print_ISBN :
978-1-4799-2882-8
DOI :
10.1109/WCSE.2013.19