Does the fault reside in a stack trace? Assisting crash localization by predicting crashing fault residence
Does the fault reside in a stack trace? Assisting crash localization by predicting crashing fault residence
复制标题
错误是否存在于堆栈跟踪中?
DOI:
10.1016/j.jss.2018.11.004
复制
发表时间:
2019
影响因子:
3.5
通讯作者:
Tieyun Qian
中科院分区:
文献类型:
--
作者:
Yongfeng Gu;Jifeng Xuan;Hongyu Zhang;Lanxin Zhang;Qingna Fan;Xiaoyuan Xie;Tieyun Qian
Given a stack trace reported at the time of software crash, crash localization aims to pinpoint the root cause of the crash. Crash localization is known as a time-consuming and labor-intensive task. Without tool support, developers have to spend tedious manual effort examining a large amount of source code based on their experience. In this paper, we propose an automatic approach, namely CraTer, which predicts whether a crashing fault resides in stack traces or not (referred to aspredicting crashing fault residence). We extract 89 features from stack traces and source code to train a predictive model based on known crashes. We then use the model to predict the residence of newly-submitted crashes. CraTer can reduce the search space for crashing faults and help prioritize crash localization efforts. Experimental results on crashes of seven real-world projects demonstrate that CraTer can achieve an average accuracy of over 92%.