A single fault localization technique based on failed test input

Testing and debugging are very important tasks in software development. Fault localization is a very critical activity in the debugging process and also is one of the most difficult and time-consuming activities. The demand for effective fault localization techniques that can aid developers to the l...

Full description

Bibliographic Details
Main Authors: Abubakar Zakari, Sai Peck Lee, Ibrahim Abaker Targio Hashem
Format: Article
Language:English
Published: Elsevier 2019-09-01
Series:Array
Subjects:
Online Access:http://www.sciencedirect.com/science/article/pii/S2590005619300086
_version_ 1818960652863012864
author Abubakar Zakari
Sai Peck Lee
Ibrahim Abaker Targio Hashem
author_facet Abubakar Zakari
Sai Peck Lee
Ibrahim Abaker Targio Hashem
author_sort Abubakar Zakari
collection DOAJ
description Testing and debugging are very important tasks in software development. Fault localization is a very critical activity in the debugging process and also is one of the most difficult and time-consuming activities. The demand for effective fault localization techniques that can aid developers to the location of faults is high. In this paper, a fault localization technique based on complex network theory named FLCN-S is proposed to improve localization effectiveness on single-fault subject programs. The proposed technique diagnoses and ranks faulty program statements based on their behavioral anomalies and distance between statements in failed tests execution by utilizing two network centrality measures (degree centrality and closeness centrality). The proposed technique is evaluated on a well-known standard benchmark (Siemens test suite) and four Unix real-life utility subject programs (gzip, sed, flex, and grep). Overall, the results show that FLCN-S is significantly more effective in locating faults in comparison with other techniques. Furthermore, we observed that both degree and closeness centrality play a vital role in the identification of faults.
first_indexed 2024-12-20T12:00:57Z
format Article
id doaj.art-11074d666a48405892f89f9707f901af
institution Directory Open Access Journal
issn 2590-0056
language English
last_indexed 2024-12-20T12:00:57Z
publishDate 2019-09-01
publisher Elsevier
record_format Article
series Array
spelling doaj.art-11074d666a48405892f89f9707f901af2022-12-21T19:41:32ZengElsevierArray2590-00562019-09-013A single fault localization technique based on failed test inputAbubakar Zakari0Sai Peck Lee1Ibrahim Abaker Targio Hashem2Department of Computer Science, Kano University of Science and Technology, Wudil, P.M.B, 3244, Kano, Nigeria; Corresponding author.Department of Software Engineering, Faculty of Computer Science and Information Technology, University of Malaya, 50603, Kuala Lumpur, MalaysiaSchool of Computing and IT, Taylor’s University, Subang Jaya, Selangor, 47500, Malaysia; Corresponding author.Testing and debugging are very important tasks in software development. Fault localization is a very critical activity in the debugging process and also is one of the most difficult and time-consuming activities. The demand for effective fault localization techniques that can aid developers to the location of faults is high. In this paper, a fault localization technique based on complex network theory named FLCN-S is proposed to improve localization effectiveness on single-fault subject programs. The proposed technique diagnoses and ranks faulty program statements based on their behavioral anomalies and distance between statements in failed tests execution by utilizing two network centrality measures (degree centrality and closeness centrality). The proposed technique is evaluated on a well-known standard benchmark (Siemens test suite) and four Unix real-life utility subject programs (gzip, sed, flex, and grep). Overall, the results show that FLCN-S is significantly more effective in locating faults in comparison with other techniques. Furthermore, we observed that both degree and closeness centrality play a vital role in the identification of faults.http://www.sciencedirect.com/science/article/pii/S2590005619300086Complex networkFault localizationProgram debuggingProgram spectraSoftware testing
spellingShingle Abubakar Zakari
Sai Peck Lee
Ibrahim Abaker Targio Hashem
A single fault localization technique based on failed test input
Array
Complex network
Fault localization
Program debugging
Program spectra
Software testing
title A single fault localization technique based on failed test input
title_full A single fault localization technique based on failed test input
title_fullStr A single fault localization technique based on failed test input
title_full_unstemmed A single fault localization technique based on failed test input
title_short A single fault localization technique based on failed test input
title_sort single fault localization technique based on failed test input
topic Complex network
Fault localization
Program debugging
Program spectra
Software testing
url http://www.sciencedirect.com/science/article/pii/S2590005619300086
work_keys_str_mv AT abubakarzakari asinglefaultlocalizationtechniquebasedonfailedtestinput
AT saipecklee asinglefaultlocalizationtechniquebasedonfailedtestinput
AT ibrahimabakertargiohashem asinglefaultlocalizationtechniquebasedonfailedtestinput
AT abubakarzakari singlefaultlocalizationtechniquebasedonfailedtestinput
AT saipecklee singlefaultlocalizationtechniquebasedonfailedtestinput
AT ibrahimabakertargiohashem singlefaultlocalizationtechniquebasedonfailedtestinput