UniLoc: Unified Fault Localization of Continuous Integration Failures

Author:

Hassan Foyzul1ORCID,Meng Na2ORCID,Wang Xiaoyin3ORCID

Affiliation:

1. University of Michigan–Dearborn

2. Virginia Tech

3. University of Texas at San Antonio

Abstract

Continuous integration (CI) practices encourage developers to frequently integrate code into a shared repository. Each integration is validated by automatic build and testing such that errors are revealed as early as possible. When CI failures or integration errors are reported, existing techniques are insufficient to automatically locate the root causes for two reasons. First, a CI failure may be triggered by faults in source code and/or build scripts, whereas current approaches consider only source code. Second, a tentative integration can fail because of build failures and/or test failures, whereas existing tools focus on test failures only. This article presents UniLoc, the first unified technique to localize faults in both source code and build scripts given a CI failure log, without assuming the failure’s location (source code or build scripts) and nature (a test failure or not). Adopting the information retrieval (IR) strategy, UniLoc locates buggy files by treating source code and build scripts as documents to search and by considering build logs as search queries. However, instead of naïvely applying an off-the-shelf IR technique to these software artifacts, for more accurate fault localization, UniLoc applies various domain-specific heuristics to optimize the search queries, search space, and ranking formulas. To evaluate UniLoc, we gathered 700 CI failure fixes in 72 open source projects that are built with Gradle. UniLoc could effectively locate bugs with the average mean reciprocal rank value as 0.49, mean average precision value as 0.36, and normalized discounted cumulative gain value as 0.54. UniLoc outperformed the state-of-the-art IR-based tool BLUiR and Locus. UniLoc has the potential to help developers diagnose root causes for CI failures more accurately and efficiently.

Funder

National Science Foundation

Publisher

Association for Computing Machinery (ACM)

Subject

Software

Reference85 articles.

1. Apache Ant Project. 2018. Ant. Retrieved August 18 2018 from https://ant.apache.org/.

2. Apache Ant Project. 2018. Ivy. Retrieved August 18 2018 from http://ant.apache.org/ivy/.

3. Apache Lucene. 2018. Lucene. Retrieved August 18 2018 from http://lucene.apache.org/.

4. Apache Maven Project. 2018. Maven. Retrieved August 18 2018 from https://maven.apache.org/.

5. PMD. 2018. PMD. Retrieved August 18 2018 from https://pmd.github.io/.

Cited by 1 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. A Formal Explainer for Just-In-Time Defect Predictions;ACM Transactions on Software Engineering and Methodology;2024-08-26

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3