Proceedings of the 26th ACM SIGSOFT International Symposium on Software Testing and Analysis 2017
DOI: 10.1145/3092703.3092709
|View full text |Cite
|
Sign up to set email alerts
|

Reinforcement learning for automatic test case prioritization and selection in continuous integration

Abstract: Testing in Continuous Integration (CI) involves test case prioritization, selection, and execution at each cycle. Selecting the most promising test cases to detect bugs is hard if there are uncertainties on the impact of committed code changes or, if traceability links between code and tests are not available. This paper introduces R , a new method for automatically learning test case selection and prioritization in CI with the goal to minimize the round-trip time between code commits and developer feedback on… Show more

Help me understand this report
View preprint versions

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

3
195
1

Year Published

2018
2018
2023
2023

Publication Types

Select...
7
1

Relationship

1
7

Authors

Journals

citations
Cited by 188 publications
(199 citation statements)
references
References 47 publications
3
195
1
Order By: Relevance
“…Chen et al [83] proposed a predictive test prioritization technique, which can predict the optimal test prioritization technique for a specific project based on its test distribution information. Spieker et al [84] utilized reinforcement learning to select and prioritize tests based on their duration, previous last execution and failure history. Busjaeger and Xie [85] utilized machine learning to integrate multiple existing test prioritization approaches so as to apply test prioritization in industrial environments.…”
Section: Test Prioritizationmentioning
confidence: 99%
“…Chen et al [83] proposed a predictive test prioritization technique, which can predict the optimal test prioritization technique for a specific project based on its test distribution information. Spieker et al [84] utilized reinforcement learning to select and prioritize tests based on their duration, previous last execution and failure history. Busjaeger and Xie [85] utilized machine learning to integrate multiple existing test prioritization approaches so as to apply test prioritization in industrial environments.…”
Section: Test Prioritizationmentioning
confidence: 99%
“…Our biggest learning was the stick with core fundamental of the design behind an application. The key to success for our system is its strength to determine the workflows and its accuracy in predicting the test cases for any given page based on the relationships learnt based on the historical data [2]. For this particular reason we had to spend time identifying a different approach.…”
Section: Table-vii Data Set Format For Each Pagementioning
confidence: 99%
“…One important driver is the fierce competition from other competing technology companies. Most of the development teams are adopting continuous integration [2] and continuous delivery [7]. Every organization is focused on building better, smarter and reliable software applications with customers in mind.…”
Section: Introductionmentioning
confidence: 99%
“…The problem of removing redundancy among test cases was addressed in Vangala et al [3] by using unsupervised clustering to cluster similar test cases together. Also, reinforcement learning was used to select and prioritize the test cases [4].…”
Section: Introductionmentioning
confidence: 99%