Reinforcement Learning for Test Case Prioritization

11/03/2020
by   Mojtaba Bagherzadeh, et al.
0

Continuous Integration (CI) significantly reduces integration problems, speeds up development time, and shortens release time. However, it also introduces new challenges for quality assurance activities, including regression testing, which is the focus of this work. Though various approaches for test case prioritization have shown to be very promising in the context of regression testing, specific techniques must be designed to deal with the dynamic nature and timing constraints of CI. Recently, Reinforcement Learning (RL) has shown great potential in various challenging scenarios that require continuous adaptation, such as game playing, real-time ads bidding, and recommender systems. Inspired by this line of work and building on initial efforts in supporting test case prioritization with RL techniques, we perform here a comprehensive investigation of RL-based test case prioritization in a CI context. To this end, taking test case prioritization as a ranking problem, we model the sequential interactions between the CI environment and a test case prioritization agent as an RL problem, using three alternative ranking models. We then rely on carefully selected and tailored, state-of-the-art RL techniques to automatically and continuously learn an optimal test case prioritization strategy. Our extensive experimental analysis shows that the best RL solutions provide a significant accuracy improvement over previous RL-based work, with prioritization strategies getting close to being optimal, thus paving the way for using RL to prioritize test cases in a CI context.

READ FULL TEXT

page 13

page 14

research
08/25/2022

A Comparison of Reinforcement Learning Frameworks for Software Testing Tasks

Software testing activities aim to find the possible defects of a softwa...
research
11/09/2018

Reinforcement Learning for Automatic Test Case Prioritization and Selection in Continuous Integration

Testing in Continuous Integration (CI) involves test case prioritization...
research
09/22/2021

A Survey on Reinforcement Learning for Recommender Systems

Recommender systems have been widely applied in different real-life scen...
research
12/23/2022

Investigation of reinforcement learning for shape optimization of profile extrusion dies

Profile extrusion is a continuous production process for manufacturing p...
research
04/22/2022

Comparative Study of Machine Learning Test Case Prioritization for Continuous Integration Testing

There is a growing body of research indicating the potential of machine ...
research
05/02/2023

Validation of massively-parallel adaptive testing using dynamic control matching

A/B testing is a widely-used paradigm within marketing optimization beca...
research
07/21/2023

Towards practical reinforcement learning for tokamak magnetic control

Reinforcement learning (RL) has shown promising results for real-time co...

Please sign up or login with your details

Forgot password? Click here to reset