Enhancing Spectrum Based Fault localization Via Emphasizing Its Formulas With Importance Weight

Q. Sarhan
{"title":"Enhancing Spectrum Based Fault localization Via Emphasizing Its Formulas With Importance Weight","authors":"Q. Sarhan","doi":"10.1145/3524459.3527349","DOIUrl":null,"url":null,"abstract":"Spectrum-Based Fault Localization (SBFL) computes suspicion scores, using risk evaluation formulas, for program elements (e.g., state-ments, methods, or classes) by counting how often each element is executed or not executed by passing versus failing test cases. The elements are then ranked from most suspicious to least suspicious based on their scores. The elements with the highest scores are thought to be the most faulty. The final ranking list of program elements helps testers during the debugging process when attempting to locate the source of a bug in the program under test. In this paper, we present an approach that gives more importance to pro-gram elements that are executed by more failed test cases compared to other elements. In essence, we are emphasizing the failing test cases factor because there are comparably much less failing tests than passing ones. We multiply each element's suspicion score ob-tained by an SBFL formula by this importance weight, which is the ratio of covering failing tests over all failing tests. The proposed approach can be applied to SBFL formulas without modifying their structures. The experimental results of our study show that our approach achieved a better performance in terms of average ranking compared to the underlying SBFL formulas. It also improved the Top- N categories and increased the number of cases in which the faulty method became the top-ranked element.","PeriodicalId":131481,"journal":{"name":"2022 IEEE/ACM International Workshop on Automated Program Repair (APR)","volume":"1 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 IEEE/ACM International Workshop on Automated Program Repair (APR)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/3524459.3527349","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

Spectrum-Based Fault Localization (SBFL) computes suspicion scores, using risk evaluation formulas, for program elements (e.g., state-ments, methods, or classes) by counting how often each element is executed or not executed by passing versus failing test cases. The elements are then ranked from most suspicious to least suspicious based on their scores. The elements with the highest scores are thought to be the most faulty. The final ranking list of program elements helps testers during the debugging process when attempting to locate the source of a bug in the program under test. In this paper, we present an approach that gives more importance to pro-gram elements that are executed by more failed test cases compared to other elements. In essence, we are emphasizing the failing test cases factor because there are comparably much less failing tests than passing ones. We multiply each element's suspicion score ob-tained by an SBFL formula by this importance weight, which is the ratio of covering failing tests over all failing tests. The proposed approach can be applied to SBFL formulas without modifying their structures. The experimental results of our study show that our approach achieved a better performance in terms of average ranking compared to the underlying SBFL formulas. It also improved the Top- N categories and increased the number of cases in which the faulty method became the top-ranked element.
利用重要权值强化基于谱的故障定位方法
基于谱的故障定位(Spectrum-Based Fault Localization, SBFL)使用风险评估公式,计算程序元素(例如,状态、方法或类)的怀疑分数,方法是通过通过测试用例与失败测试用例来计算每个元素执行或不执行的频率。然后根据这些元素的得分,将它们从最可疑的到最不可疑的进行排序。得分最高的元素被认为是缺陷最多的。程序元素的最终排序列表可以帮助测试人员在调试过程中定位被测程序中的错误来源。在本文中,我们提出了一种方法,该方法对程序元素给予了更多的重视,与其他元素相比,程序元素被更多失败的测试用例执行。从本质上讲,我们强调失败的测试用例因素,因为失败的测试比通过的测试要少得多。我们用SBFL公式得到的每个元素的怀疑分数乘以这个重要性权重,它是覆盖失败测试与所有失败测试的比率。所提出的方法可以在不改变SBFL公式结构的情况下应用于该公式。实验结果表明,与基础的SBFL公式相比,我们的方法在平均排名方面取得了更好的性能。它还改进了Top- N类别,并增加了错误方法成为排名最高元素的案例数量。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信