Test Impact Prediction for Code Commits

Authors

  • Pradeepkumar Palanisamy Anna University, India

DOI:

https://doi.org/10.47941/ijce.2907

Keywords:

Artificial Intelligence, Machine Learning, Deep Learning, Continuous Integration, Test Impact Analysis

Abstract

In fast-paced software development environments, the efficiency of Continuous Integration (CI) pipelines is frequently hampered by the escalating time required to execute comprehensive test suites. This paper presents an AI-driven framework for Test Impact Prediction (TIP) designed to intelligently identify and prioritize only the most relevant test cases affected by a specific code commit, thereby significantly reducing test execution time without compromising quality. By training sophisticated AI models on a rich array of data—including detailed code coverage metrics, granular commit differences (diffs), historical mappings between code changes and affected tests, and intricate dependency graphs of both code and tests—our system accurately predicts which tests are most likely to be impacted. This intelligent prediction enables the dynamic selection and prioritization of tests within CI pipelines, leading to an anticipated reduction in test execution time by over 50% with minimal risk of regressions. This approach not only accelerates feedback cycles for developers but also optimizes computational resource utilization, fostering a more agile and efficient development workflow crucial for modern software delivery.

Downloads

Download data is not yet available.

References

Hassan, A. E. (2008). Predicting faults using the complexity of code changes. IEEE ICSE. https://doi.org/10.1145/1368088.1368104

Kim, S., Zimmermann, T., Whitehead, E. J., & Zeller, A. (2007). Predicting faults from cached history. ICSE. https://doi.org/10.1109/ICSE.2007.67

Elbaum, S., Rothermel, G., Kallakuri, P., Malishevsky, A. G., & Qian, H. (2004). Test case prioritization: A family of empirical studies. IEEE Transactions on Software Engineering. https://doi.org/10.1109/TSE.2004.45

Zhang, H., Zhang, L., & Kim, S. (2012). Change classification for locating broken build changes. IEEE ASE. https://doi.org/10.1145/2382756.2382794

Do, H., Elbaum, S., & Rothermel, G. (2005). Supporting controlled experimentation with testing techniques. Empirical Software Engineering. https://doi.org/10.1007/s10664-005-3861-2

Kochhar, P. S., Teyton, C., Bacchelli, A., & Lo, D. (2016). Understanding flaky tests: The developer's perspective. IEEE ICSME. https://doi.org/10.1109/ICSME.2016.10

Spacco, J., Pugh, W., Ayewah, N., & Hovemeyer, D. (2009). The Marmoset project: An automated framework for snapshot-based feedback. ACM TOCE. https://doi.org/10.1145/1509388.1509390

Busjaeger, B., & Xie, T. (2016). Learning for test prioritization: An industrial case study. FSE. https://doi.org/10.1145/2950290.2983949

Just, R., Jalali, D., & Ernst, M. D. (2014). Defects4J: A database of Java programs with real bugs. ISSTA. https://doi.org/10.1145/2610384.2628055

Hemmati, H., & Briand, L. C. (2010). An industrial investigation of similarity measures for model-based test case selection. IST Journal. https://doi.org/10.1016/j.infsof.2010.02.008

Marijan, D., Gotlieb, A., & Sen, S. (2013). Test case prioritization for continuous regression testing: An industrial case study. ISSTA. https://doi.org/10.1145/2483760.2483762

Gligoric, M., Eloussi, L., & Marinov, D. (2015). Practical regression test selection with dynamic file dependencies. ISSTA. https://doi.org/10.1145/2771783.2771802

Downloads

Published

2025-07-08

How to Cite

Palanisamy, P. (2025). Test Impact Prediction for Code Commits. International Journal of Computing and Engineering, 7(5), 28–41. https://doi.org/10.47941/ijce.2907

Issue

Section

Articles