Continuous test suite failure prediction
Cong Pan, Michael Pradel
摘要
Continuous integration advocates to run the test suite of a project frequently, e.g., for every code change committed to a shared repository. This process imposes a high computational cost and sometimes also a high human cost, e.g., when developers must wait for the test suite to pass before a change appears in the main branch of the shared repository. However, only 4% of all test suite invocations turn a previously passing test suite into a failing test suite. The question arises whether running the test suite for each code change is really necessary. This paper presents continuous test suite failure prediction, which reduces the cost of continuous integration by predicting whether a particular code change should trigger the test suite at all. The core of the approach is a machine learning model based on features of the code change, the test suite, and the development history. We also present a theoretical cost model that describes when continuous test suite failure prediction is worthwhile. Evaluating the idea with 15k test suite runs from 242 open-source projects shows that the approach is effective at predicting whether running the test suite is likely to reveal a test failure. Moreover, we find that our approach improves the AUC over baselines that use features proposed for just-in-time defect prediction and test case failure prediction by 13.9% and 2.9%, respectively. Overall, continuous test suite failure prediction can significantly reduce the cost of continuous integration. CCS CONCEPTS • Software and its engineering Software testing and debugging.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper5
- Resource Usage and Optimization Opportunities in Workflows of GitHub ActionsIslem Bouzenia, Michael PradelICSE 2024 · 被引用 15 次
- RavenBuild: Context, Relevance, and Dependency Aware Build Outcome PredictionGengyi Sun, Sarra Habchi, Shane McIntoshFSE 2024 · 被引用 8 次
- Revisiting Test-Case Prioritization on Long-Running Test SuitesRunxiang Cheng, Shuai Wang, Reyhaneh Jabbarvand, Darko MarinovISSTA 2024 · 被引用 2 次
- Rechecking Recheck Requests in Continuous Integration: An Empirical Study of OpenStackYelizaveta Brus, Rungroj Maipradit, Earl T. Barr, Shane McIntoshASE 2025 · 被引用 1 次
- Names Are All You Need: Effective and Safe Regression Test Selection for PythonYou Wang, Michael Pradel, Zhongxin LiuISSTA 2026
它引用的顶会 Paper3
- An investigation of cross-project learning in online just-in-time software defect predictionSadia Tabassum, Leandro L. Minku, Danyi Feng, George G. Cabral 等ICSE 2020 · 被引用 49 次
- A cost-efficient approach to building in continuous integrationXianhao Jin, Francisco ServantICSE 2020 · 被引用 34 次
- BUILDFAST: History-Aware Build Outcome Prediction for Fast Feedback and Reduced Cost in Continuous IntegrationBihuan Chen, Linlin Chen, Chen Zhang, Xin PengASE 2020 · 被引用 32 次
相关 Paper
- Learning-to-rank vs ranking-to-learn: strategies for regression testing in continuous integrationAntonia Bertolino, Antonio Guerriero, Breno Miranda, Roberto Pietrantuono 等ICSE 2020 · 被引用 81 次
- Buildsheriff: Change-Aware Test Failure Triage for Continuous Integration BuildsChen Zhang, Bihuan Chen, Xin Peng, Wenyun ZhaoICSE 2022 · 被引用 10 次
- Commit Artifact Preserving Build PredictionGuoqing Wang, Zeyu Sun, Yizhou Chen, Yifan Zhao 等ISSTA 2024 · 被引用 3 次
- Empirically evaluating readily available information for regression test optimization in continuous integrationDaniel Elsner, Florian Hauer, Alexander Pretschner, Silke ReimerISSTA 2021 · 被引用 45 次
- Green Fuzzing: A Saturation-Based Stopping Criterion using Vulnerability PredictionStephan Lipp, Daniel Elsner, Severin Kacianka, Alexander Pretschner 等ISSTA 2023 · 被引用 6 次
