A Mutation-Guided Assessment of Acceleration Appproaches for Continuous Integration: An Empirical Study of Yourbase

Authors - Zhili Zeng, Tao Xiao, Maxime Lamothe, Hideaki Hata, Shane McIntosh
Venue - International Conference on Mining Software Repositories, pp. To appear, 2024

Related Tags - MSR 2024 continuous integration build performance

Abstract - Continuous Integration (CI) is a popular software development practice that quickly verifies updates to codebases. To cope with the ever-increasing demand for faster software releases, CI acceleration approaches have been proposed; however, adoption of CI acceleration is not without risks. For example, CI acceleration products may mislabel change sets (e.g., a build labeled as failing that passes in an unaccelerated setting or vice versa) or produce results that are inconsistent with an unaccelerated build (e.g., the underlying reasons for failure differ between (un)accelerated builds). These inconsistencies threaten the trustworthiness of CI acceleration products.

In this paper, we propose an approach inspired by mutation testing to systematically evaluate the trustworthiness of CI acceleration. We apply our approach to YourBase, a program analysis-based CI acceleration product, and uncover issues that hinder its trustworthiness. First, we study how often the same build in accelerated and unaccelerated CI settings produce different mutation testing outcomes. We call mutants with different outcomes in the two settings "gap mutants". Next, we study the code locations where gap mutants appear. Finally, we inspect gap mutants to understand why acceleration causes them to survive. Our analysis of ten open-source projects uncovers 2,237 gap mutants. We find that: (1) the gap mutants account for 0.11%–23.50% of the studied mutants; (2) 88.95% of gap mutants can be mapped to specific source code functions and classes using the dependency representation of the studied CI acceleration product; and (3) 69% of gap mutants survive CI acceleration due to deterministic reasons that can be classified into six fault patterns. Our results show that even deterministic CI acceleration solutions suffer from trustworthiness limitations, and highlight the ways in which trustworthiness could be pragmatically improved.

Preprint - PDF

Bibtex

@inproceedings{zeng2024msr,
  Author = {Zhili Zeng and Tao Xiao and Maxime Lamothe and Hideaki Hata and Shane McIntosh},
  Title = {{A Mutation-Guided Assessment of Acceleration Appproaches for Continuous Integration: An Empirical Study of Yourbase}},
  Year = {2024},
  Booktitle = {Proc. of the International Conference on Mining Software Repositories (MSR)},
  Pages = {To appear}
}