GBSR: Graph-based suspiciousness refinement for improving fault localization

被引:0
作者
Li, Zheng [1 ]
Li, Mingyu [1 ]
Wu, Shumei [1 ]
Xu, Shunqing [1 ]
Chen, Xiang [2 ]
Liu, Yong [1 ]
机构
[1] Beijing Univ Chem Technol, Coll Informat Sci & Technol, Beijing, Peoples R China
[2] Nantong Univ, Sch Informat Sci & Technol, Nantong, Peoples R China
基金
中国国家自然科学基金;
关键词
Fault localization; Suspiciousness refinement; Graph-based representation; Mutation analysis; PageRank algorithm; REDUCTION; STRATEGY;
D O I
10.1016/j.jss.2024.112189
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Fault Localization (FL) is an important and time-consuming phase of software debugging. The essence of FL lies in the process of calculating the suspiciousness of different program entities (e.g., statements) and generating a ranking list to guide developers in their code inspection. Nonetheless, a prevalent challenge within existing FL methodologies is the propensity for program entities with analogous execution information to receive a similar suspiciousness. This phenomenon can lead to confusion among developers, thereby reducing the effectiveness of debugging significantly. To alleviate this issue, we introduce fine-grained contextual information (such as partial code structural, coverage, and features from mutation analysis) to enrich the characteristics of program entities. Graphical structures are proposed to organize such information, where the passed and failed tests are constructed separately with the consideration of their differential impacts. In order to support the analysis of multidimensional features and the representation of large-scale programs, the PageRank algorithm is adopted to compute each program entity's weight. Rather than altering the fundamental FL process, we leverage these computed weights to refine the suspiciousness produced by various FL techniques, thereby providing developers with a more precise and actionable ranking of potential fault locations. The proposed strategy Graph-Based Suspiciousness Refinement (GBSR) is evaluated on 243 real-world faulty programs from the Defects4J. The results demonstrate that GBSR can improve the accuracy of various FL techniques. Specifically, for the refinement with traditional SBFL and MBFL techniques, the number of faults localized by the first position of the ranking list ( Top-1) is increased by 189% and 68%, respectively. Furthermore, GBSR can also boost the state-of-the-art learning-based FL technique Grace by achieving a 2.8% performance improvement in Top-1.
引用
收藏
页数:14
相关论文
共 61 条
  • [41] Mutation Testing Advances: An Analysis and Survey
    Papadakis, Mike
    Kintis, Marinos
    Zhang, Jie
    Jia, Yue
    Le Traon, Yves
    Harman, Mark
    [J]. ADVANCES IN COMPUTERS, VOL 112, 2019, 112 : 275 - 378
  • [42] Metallaxis-FL: mutation-based fault localization
    Papadakis, Mike
    Le Traon, Yves
    [J]. SOFTWARE TESTING VERIFICATION & RELIABILITY, 2015, 25 (5-7) : 605 - 628
  • [43] Automatic Identification of Vulnerable Code: Investigations with an AST-Based Neural Network
    Partenza, Garrett
    Amburgey, Trevor
    Deng, Lin
    Dehlinger, Josh
    Chakraborty, Suranjan
    [J]. 2021 IEEE 45TH ANNUAL COMPUTERS, SOFTWARE, AND APPLICATIONS CONFERENCE (COMPSAC 2021), 2021, : 1475 - 1482
  • [44] Evaluating and improving fault localization
    Pearson, Spencer
    Campos, Jose
    Just, Rene
    Fraser, Gordon
    Abreu, Rui
    Ernst, Michael D.
    Pang, Deric
    Keller, Benjamin
    [J]. 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE), 2017, : 609 - 620
  • [45] Planning S., 2002, National Institute of Standards and Technology
  • [46] GNet4FL: effective fault localization via graph convolutional neural network
    Qian, Jie
    Ju, Xiaolin
    Chen, Xiang
    [J]. AUTOMATED SOFTWARE ENGINEERING, 2023, 30 (02)
  • [47] A Survey of Challenges in Spectrum-Based Software Fault Localization
    Sarhan, Qusay Idrees
    Beszedes, Arpad
    [J]. IEEE ACCESS, 2022, 10 : 10618 - 10639
  • [48] SBFL-Suitability: A Software Characteristic for Fault Localization
    Sasaki, Yui
    Higo, Yoshiki
    Matsumoto, Shinsuke
    Kusumoto, Shinji
    [J]. 2020 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE MAINTENANCE AND EVOLUTION (ICSME 2020), 2020, : 702 - 706
  • [49] FLUCCS: Using Code and Change Metrics to Improve Fault Localization
    Sohn, Jeongju
    Yoo, Shin
    [J]. PROCEEDINGS OF THE 26TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON SOFTWARE TESTING AND ANALYSIS (ISSTA'17), 2017, : 273 - 283
  • [50] Sullivan Gail M, 2012, J Grad Med Educ, V4, P279, DOI 10.4300/JGME-D-12-00156.1