基于崩溃堆栈跟踪定位崩溃故障
软件工程
2014-04-17 v1
摘要
软件因其日益增加的复杂性而发生崩溃。一旦发生崩溃,经用户许可后可将崩溃报告发送给软件开发人员以供调查。由于崩溃报告数量庞大且信息有限,崩溃调试往往是一项繁琐且劳动密集型的任务。在本文中,我们提出了一种统计故障定位框架,以帮助开发人员定位包含崩溃故障的函数。我们基于崩溃堆栈生成失败执行轨迹,并从正常执行中生成通过执行轨迹。通过结合生成的通过轨迹和失败轨迹形成程序谱,然后应用 Ochiai 等统计故障定位技术来定位崩溃故障。我们还提出了两种启发式方法以提高故障定位性能。我们使用真实的 Firefox 崩溃报告数据评估了我们的方法。结果表明,我们方法的性能令人鼓舞。我们的方法使开发人员仅需检查谱中 5% 的 Firefox 3.6 函数即可定位 63.9% 的崩溃故障。
引用
@article{arxiv.1404.4100,
title = {Locating Crashing Faults based on Crash Stack Traces},
author = {Liang Gong and Hongyu Zhang and Hyunmin Seo and Sunghun Kim},
journal= {arXiv preprint arXiv:1404.4100},
year = {2014}
}
备注
11 pages, this works is done in 2011 when the first author(Liang Gong) was a master student in Tsinghua University