arrow
返回

Efficient Black-Box Fault Localization for System-Level Test Code Using Large Language Models

delete2026-06-25
delete0
PRE
AI
A
Ahmadreza Saboor Yaraghi
G
Golnaz Gharachorlu
S
Sakina Fatima
L
Lionel Briand
R
Ruiyuan Wan
R
Ruifeng Gao
DOI:10.1109/tse.2026.3707426delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
故障定位(FL)是调试中的关键步骤,通常依赖于重复执行以准确定位有错误的代码区域。然而,在存在非确定性故障或高执行成本的情况下,重复执行可能不切实际。尽管近期研究利用大型语言模型(LLMs)辅助无执行故障定位,但这些方法主要关注识别被测系统(SUT)中的错误,而非常复杂的系统级测试代码,即系统级测试的测试脚本。然而,后者同样重要,因为在实践中,许多故障是由有错误的测试代码触发的。为克服这些挑战,我们引入了一种完全静态、LLM驱动的系统级测试代码故障定位(TCFL)方法,无需执行测试用例。我们的方法使用单个故障执行日志,通过三种新颖算法估计测试的执行轨迹,仅识别可能涉及故障的代码语句。该修剪后的轨迹与错误信息结合,用于提示LLM对潜在错误位置进行排名。我们的黑盒、系统级方法无需访问SUT源代码,适用于评估完整系统行为的复杂测试脚本。我们使用未用于LLM预训练的工业级有误Python测试用例数据集,在函数、块和行级别评估了我们的技术。结果表明,我们估计的最佳轨迹与实际轨迹高度匹配,F1分数约为90%。此外,修剪复杂的系统级测试代码可将LLM的推理时间减少最多34%,且不影响FL性能。我们的结果进一步表明,块级TCFL提供了实用的平衡,缩小了搜索空间同时保留了有用上下文,在Top-3(Hit@3)中达到81%的命中率。最后,我们的TCFL方法实现了等于或更高的FL准确率,每个测试用例的平均推理时间减少85%以上,令牌数减少93%,优于最新的LLM引导FL方法。
Keyword:
Fault localization
large language models
execution trace estimation
software testing and debugging

期刊

IEEE Transactions on Software Engineering 封面图
IEEE Transactions on Software Engineering
IF:
5.6
论文数:
2.9K
被引数:
1.1W

机构

U
University of Ottawa
学者数:
580
论文数: 259
被引数: 0
H
huawei technologies company ltd
学者数:
25
论文数: 10
被引数: 0
引用论文

引用论文

暂无论文信息