The role of Reinforcement Learning in software testing

被引:5
|
作者
Abo-eleneen, Amr [1 ]
Palliyali, Ahammed [1 ]
Catal, Cagatay [1 ]
机构
[1] Qatar Univ, Dept Comp Sci & Engn, Doha 2713, Qatar
关键词
Software testing; Machine learning; Reinforcement Learning; Artificial intelligence;
D O I
10.1016/j.infsof.2023.107325
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Context: Software testing is applied to validate the behavior of the software system and identify flaws and bugs. Different machine learning technique types such as supervised and unsupervised learning were utilized in software testing. However, for some complex software testing scenarios, neither supervised nor unsupervised machine learning techniques were adequate. As such, researchers applied Reinforcement Learning (RL) techniques in some cases. However, a systematic overview of the state-of-the-art on the role of reinforcement learning in software testing is lacking.Objective: The objective of this study is to determine how and to what extent RL was used in software testing.Methods: In this study, a Systematic Literature Review (SLR) was conducted on the use of RL in software testing, and 40 primary studies were investigated.Results: This study highlights different software testing types to which RL has been applied, commonly used RL algorithms and architecture for learning, challenges faced, advantages and disadvantages of using RL, and the performance comparison of RL-based models against other techniques.Conclusions: RL has been widely used in software testing but has almost narrowed to two applications. There is a shortage of papers using advanced RL techniques in addition to multi-agent RL. Several challenges were presented in this study.
引用
收藏
页数:14
相关论文
共 50 条
  • [41] An Automated System for Interactively Learning Software Testing
    Smith, Rebecca
    Tang, Terry
    Warren, Joe
    Rixner, Scott
    ITICSE'17: PROCEEDINGS OF THE 2017 ACM CONFERENCE ON INNOVATION AND TECHNOLOGY IN COMPUTER SCIENCE EDUCATION, 2017, : 98 - 103
  • [42] iLearnTest Educational Game for Learning Software Testing
    Ribeiro, Tania P. B.
    Paiva, Ana C. R.
    2015 10TH IBERIAN CONFERENCE ON INFORMATION SYSTEMS AND TECHNOLOGIES (CISTI), 2015,
  • [43] Novel Applications of Machine Learning in Software Testing
    Briand, Lionel C.
    QSIC 2008: PROCEEDINGS OF THE EIGHTH INTERNATIONAL CONFERENCE ON QUALITY SOFTWARE, 2008, : 3 - 10
  • [44] Practice and transfer of learning in the teaching of software testing
    Kaner, Cem
    Padmanabhan, Sowmya
    20TH CONFERENCE ON SOFTWARE ENGINEERING EDUCATION & TRAINING, PROCEEDINGS, 2007, : 157 - +
  • [45] Learning-Based Software Testing: A Tutorial
    Meinke, Karl
    Niu, F.
    Sindhu, M.
    LEVERAGING APPLICATIONS OF FORMAL METHODS, VERIFICATION, AND VALIDATION, 2012, 336 : 200 - 219
  • [46] Fairness Testing of Machine Learning Models Using Deep Reinforcement Learning
    Xie, Wentao
    Wu, Peng
    2020 IEEE 19TH INTERNATIONAL CONFERENCE ON TRUST, SECURITY AND PRIVACY IN COMPUTING AND COMMUNICATIONS (TRUSTCOM 2020), 2020, : 121 - 128
  • [47] IFRIT: Focused Testing through Deep Reinforcement Learning
    Romdhana, Andrea
    Ceccato, Mariano
    Merlo, Alessio
    Tonella, Paolo
    2022 IEEE 15TH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST 2022), 2022, : 24 - 34
  • [48] Testing the Plasticity of Reinforcement Learning-based Systems
    Biagiola, Matteo
    Tonella, Paolo
    ACM TRANSACTIONS ON SOFTWARE ENGINEERING AND METHODOLOGY, 2022, 31 (04)
  • [49] Augmenting Automated Game Testing with Deep Reinforcement Learning
    Bergdahl, Joakim
    Gordillo, Camilo
    Tollmar, Konrad
    Gisslen, Linus
    2020 IEEE CONFERENCE ON GAMES (IEEE COG 2020), 2020, : 600 - 603
  • [50] Using Reinforcement Learning for Load Testing of Video Games
    Tufano, Rosalia
    Scalabrino, Simone
    Pascarella, Luca
    Aghajani, Emad
    Oliveto, Rocco
    Bavota, Gabriele
    2022 ACM/IEEE 44TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING (ICSE 2022), 2022, : 2303 - 2314