Accelerating Continuous Integration with Parallel Batch Testing
Continuous integration at scale is costly but essential to modern software development. Different test optimization techniques including test selection and prioritization have been proposed to reduce the cost. Test batching is an effective alternative, but often overlooked test optimization technique. In this study, we evaluate the impact of parallelization by varying the number of machines on test batching and propose two new test batching approaches.
We use the default TestAll approach as a baseline to examine the impact of parallelism and machine count on feedback time, which is the time taken for test verdicts to be available for each change. Additionally, we re-evaluate the ConstantBatching technique and introduce the BatchAll algorithm, which adjusts batch size based on the remaining changes in the queue. We also propose TestCaseBatching, which allows new builds to be added to a batch before all tests are executed, accelerating continuous integration. The evaluations are conducted using test results from CompanyA, a proprietary application, and 276 million test outcomes from the open-source Chrome project. Our assessments focus on feedback time and execution reduction, and we provide access to our scripts and data for the Chrome project.
The results reveal a non-linear impact of test parallelization on feedback time, as each test delay compounds across the entire test queue. ConstantBatching, with a batch size of 4, utilizes up to 72% fewer machines to maintain the actual average feedback time and provides a constant execution reduction of up to 75%. Similarly, BatchAll maintains the actual average feedback time with up to 91% fewer machines and exhibits variable execution reduction of up to 99%. TestCaseBatching holds the line of the actual average feedback time with up to 81% fewer machines and demonstrates variable execution reduction of up to 67%. We recommend practitioners use BatchAll and TestCaseBatching as both can reduce the number of machines needed for testing. It is crucial to first examine historical data and determine the threshold at which increasing the number of machines minimally affects feedback time to ensure efficient testing and resource utilization.
Tue 5 DecDisplayed time zone: Pacific Time (US & Canada) change
11:00 - 12:30 | Testing IIdeas, Visions and Reflections / Research Papers / Journal First / Industry Papers at Golden Gate C1 Chair(s): Marcelo d'Amorim North Carolina State University | ||
11:00 15mTalk | [Remote] CAmpactor: A Novel and Effective Local Search Algorithm for Optimizing Pairwise Covering Arrays Research Papers Qiyuan Zhao Beihang University, Chuan Luo Beihang University, Shaowei Cai Institute of Software, Chinese Academy of Sciences, Wei Wu L3S Research Center, Leibniz University Hannover, Germany, Jinkun Lin Seed Math Technology Limited, Hongyu Zhang Chongqing University, Chunming Hu Beihang University DOI Pre-print Media Attached | ||
11:15 15mTalk | Accelerating Continuous Integration with Parallel Batch Testing Research Papers Emad Fallahzadeh Concordia University, Amir Hossein Bavand Concordia University, Peter Rigby Concordia University; Meta Pre-print Media Attached | ||
11:30 15mTalk | Keeping Mutation Test Suites Consistent and Relevant with Long-Standing Mutants Ideas, Visions and Reflections Milos Ojdanic University of Luxembourg, Mike Papadakis University of Luxembourg, Luxembourg, Mark Harman Meta Platforms Inc. and UCL Media Attached | ||
11:45 15mTalk | DistXplore: Distribution-guided Testing for Evaluating and Enhancing Deep Learning Systems Research Papers Longtian Wang Xi'an Jiaotong University, Xiaofei Xie Singapore Management University, Xiaoning Du Monash University, Australia, Meng Tian Singapore Management University, Qing Guo IHPC and CFAR at A*STAR, Singapore, Yang Zheng TTE Lab, Huawei, Chao Shen Xi’an Jiaotong University Media Attached | ||
12:00 15mTalk | Input Distribution Coverage: Measuring Feature Interaction Adequacy in Neural Network Testing Journal First Swaroopa Dola University of Virginia, Matthew B Dwyer University of Virginia, Mary Lou Soffa University of Virginia Media Attached | ||
12:15 15mTalk | A Unified Framework for Mini-game Testing: Experience on WeChat Industry Papers Chaozheng Wang The Chinese University of Hong Kong, Haochuan Lu Tencent, Cuiyun Gao The Chinese University of Hong Kong, Li Zongjie Hong Kong University of Science and Technology, Ting Xiong Tencent Inc., Yuetang Deng Tencent Inc. DOI Media Attached |