TLFL: Token-Level Fault Localization for Novice Programs via Graph Representation Learning

Fault Localization (FL) is a potential method to enhance coding productivity for novices. However, current work on FL concentrates on method-level or statement-level. Despite hints of potential fault locations, it is still challenging to identify the root causes (i.e., faulty tokens) for novices, who have little familiarity with the programming language. In our research, we introduce TLFL, an innovative approach to Token-Level Fault Localization tailored for beginners. This method leverages comprehensive code architecture and coverage data, employing graph-based representation learning to enhance effectiveness. Specifically, we introduce a novel graph-based token-level representation designed to preserve code structures from various granularities, along with coverage information at the statement level. Then, we utilize a Graph Neural Network to derive significant features from the graph-based token-level representation and identify faulty tokens in the program. Evaluation results on 2189 student programs from the well-established standard benchmark CoderFlaws show that TLFL localizes 94 faults in Top-1, outperforming the state-of-the-art FL techniques, including RNNFL, CNNFL, SBFL, and FLITSR. In particular, TLFL localizes more 93, 166, 176, and 133 faults than the best-performing technique RNNFL in Top-1, Top-3, Top-5, and Top-10.

Authors

Institutions

Publication Details

Published
2024-10-28
DOI
https://doi.org/10.1109/issrew63542.2024.00068
Primary Topic
Software Testing and Debugging Techniques
Type
article
Field-Weighted Citation Impact
0.00

Funders

Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

TLFL: Token-Level Fault Localization for Novice Programs via Graph Representation Learning

Liu Yong, ShuMei Wu, R. Stephanie Huang, Binbin Yang et al.
Software Testing and Debugging Techniques
article

TLFL: Token-Level Fault Localization for Novice Programs via Graph Representation Learning

Liu Yong, ShuMei Wu, R. Stephanie Huang, Binbin Yang, Jianfeng Yang
article en

Abstract

Fault Localization (FL) is a potential method to enhance coding productivity for novices. However, current work on FL concentrates on method-level or statement-level. Despite hints of potential fault locations, it is still challenging to identify the root causes (i.e., faulty tokens) for novices, who have little familiarity with the programming language. In our research, we introduce TLFL, an innovative approach to Token-Level Fault Localization tailored for beginners. This method leverages comprehensive code architecture and coverage data, employing graph-based representation learning to enhance effectiveness. Specifically, we introduce a novel graph-based token-level representation designed to preserve code structures from various granularities, along with coverage information at the statement level. Then, we utilize a Graph Neural Network to derive significant features from the graph-based token-level representation and identify faulty tokens in the program. Evaluation results on 2189 student programs from the well-established standard benchmark CoderFlaws show that TLFL localizes 94 faults in Top-1, outperforming the state-of-the-art FL techniques, including RNNFL, CNNFL, SBFL, and FLITSR. In particular, TLFL localizes more 93, 166, 176, and 133 faults than the best-performing technique RNNFL in Top-1, Top-3, Top-5, and Top-10.

Beijing University of Chemical Technology (CN)
National Natural Science Foundation of China, Beijing University of Chemical Technology
Quality Education
Openalex Percentile: Top 77%
Software Testing and Debugging Techniques
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.