TY - CONF
T1 - Locating faulty code using failure-causing input combinations in combinatorial testing
AU - Ma, Chunyan
AU - Zhang, Yifei
AU - Liu, Jie
AU - Zhao, Meng
PY - 2013
Y1 - 2013
N2 - 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.
AB - 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.
KW - Cause-effect chain
KW - Combinatorial testing
KW - Failure-causing input combinations
KW - Fault localization
UR - http://www.scopus.com/inward/record.url?scp=84899088463&partnerID=8YFLogxK
U2 - 10.1109/WCSE.2013.19
DO - 10.1109/WCSE.2013.19
M3 - 论文
AN - SCOPUS:84899088463
SP - 91
EP - 98
T2 - 2013 4th World Congress on Software Engineering, WCSE 2013
Y2 - 3 December 2013 through 4 December 2013
ER -