Test Prioritization in Continuous Integration Environments
Alireza Haghighatkhah, Mika M\"antyl\"a, Markku Oivo, Pasi Kuvaja

TL;DR
This study evaluates and combines diversity-based and history-based test prioritization heuristics to improve early fault detection in continuous integration environments, demonstrating their effectiveness through empirical analysis of open-source projects.
Contribution
It investigates the combined use of diversity-based and history-based test prioritization in CI, highlighting the predictive power of failure history and the benefits of their integration.
Findings
History-based failure knowledge effectively predicts faults in CI.
Combining diversity and history improves test prioritization effectiveness.
History-based diversity using NCD Multiset offers superior effectiveness with higher overhead.
Abstract
Two heuristics namely diversity-based (DBTP) and history-based test prioritization (HBTP) have been separately proposed in the literature. Yet, their combination has not been widely studied in continuous integration (CI) environments. The objective of this study is to catch regression faults earlier, allowing developers to integrate and verify their changes more frequently and continuously. To achieve this, we investigated six open-source projects, each of which included several builds over a large time period. Findings indicate that previous failure knowledge seems to have strong predictive power in CI environments and can be used to effectively prioritize tests. HBTP does not necessarily need to have large data, and its effectiveness improves to a certain degree with larger history interval. DBTP can be used effectively during the early stages, when no historical data is available,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
