首页> 外文会议>IEEE/ACM International Conference on Mining Software Repositories >An Empirical Analysis of Build Failures in the Continuous Integration Workflows of Java-Based Open-Source Software
【24h】

An Empirical Analysis of Build Failures in the Continuous Integration Workflows of Java-Based Open-Source Software

机译:基于Java的开源软件的连续集成工作流中构建失败的实证分析

获取原文

摘要

Continuous Integration (CI) has become a common practice in both industrial and open-source software development. While CI has evidently improved aspects of the software development process, errors during CI builds pose a threat to development efficiency. As an increasing amount of time goes into fixing such errors, failing builds can significantly impair the development process and become very costly. We perform an indepth analysis of build failures in CI environments. Our approach links repository commits to data of corresponding CI builds. Using data from 14 open-source Java projects, we first identify 14 common error categories. Besides test failures, which are by far the most common error category (up to >80% per project), we also identify noisy build data, e.g., induced by transient Git interaction errors, or general infrastructure flakiness. Second, we analyze which factors impact the build results, taking into account general process and specific CI metrics. Our results indicate that process metrics have a significant impact on the build outcome in 8 of the 14 projects on average, but the strongest influencing factor across all projects is overall stability in the recent build history. For 10 projects, more than 50% (up to 80%) of all failed builds follow a previous build failure. Moreover, the fail ratio of the last k=10 builds has a significant impact on build results for all projects in our dataset.
机译:持续整合(CI)已成为工业和开源软件开发的常见做法。虽然CI显然改进了软件开发过程的各个方面,但CI构建期间的错误构成了对发展效率的威胁。随着时间越来越多的时间来解决此类错误,未能造成的构建可能会显着损害开发过程并变得非常昂贵。我们在CI环境中对构建故障进行了深入分析。我们的方法将存储库链接到相应CI构建的数据。使用来自14个开源Java项目的数据,我们首先识别14个常见错误类别。除了测试失败之外,它是迄今为止最常见的错误类别(每个项目最高> 80 %),我们还识别嘈杂的构建数据,例如,由瞬态Git交互误差或一般基础设施涂抹诱导。其次,考虑到一般流程和特定的CI指标,我们分析了哪些因素影响建设结果。我们的结果表明,流程指标对14个项目中的8个平均值的建立结果产生了重大影响,但所有项目中最强的影响因素是最近的建设历史中的整体稳定。对于10个项目,超过50 %(最多80 %)所有失败的构建遵循以前的构建失败。此外,最后k = 10个构建的失败比对我们数据集中所有项目的构建结果产生了重大影响。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号