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 条
  • [31] Reinforcement Learning for Efficient Network Penetration Testing
    Ghanem, Mohamed C.
    Chen, Thomas M.
    INFORMATION, 2020, 11 (01)
  • [32] Using Deep Reinforcement Learning for Exploratory Performance Testing of Software Systems With Multi-Dimensional Input Spaces
    Ahmad, Tanwir
    Ashraf, Adnan
    Truscan, Dragos
    Domi, Andi
    Porres, Ivan
    IEEE ACCESS, 2020, 8 : 195000 - 195020
  • [33] Generating Effective Software Obfuscation Sequences With Reinforcement Learning
    Wang, Huaijin
    Wang, Shuai
    Xu, Dongpeng
    Zhang, Xiangyu
    Liu, Xiao
    IEEE TRANSACTIONS ON DEPENDABLE AND SECURE COMPUTING, 2022, 19 (03) : 1900 - 1917
  • [34] Optimal Scheduling of Software Projects Using Reinforcement Learning
    Padberg, Frank
    Weiss, David
    2011 18TH ASIA-PACIFIC SOFTWARE ENGINEERING CONFERENCE (APSEC 2011), 2011, : 9 - 16
  • [35] The Role of Verification and Validation in Software Testing
    Reddy, Jogannagari Malla
    Prasad, S. V. A. V.
    PROCEEDINGS OF THE 10TH INDIACOM - 2016 3RD INTERNATIONAL CONFERENCE ON COMPUTING FOR SUSTAINABLE GLOBAL DEVELOPMENT, 2016, : 1298 - 1301
  • [36] The Role of Experience in Software Testing Practice
    Beer, Armin
    Ramler, Rudolf
    PROCEEDINGS OF THE 34TH EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS, 2008, : 258 - +
  • [37] Generating Efficient Instruction Sequence for Software-Based Self-Testing of Processor Cores Using Reinforcement Learning
    Seo, Jongseon
    Cho, Hyungmin
    IEEE ACCESS, 2024, 12 : 189288 - 189296
  • [38] Learning environments in software testing education: An overview
    Zivkovic, Tamara
    Draskovic, Drazen
    Nikolic, Bosko
    COMPUTER APPLICATIONS IN ENGINEERING EDUCATION, 2023, 31 (06) : 1497 - 1521
  • [39] Combining Learning and Engagement Strategies in a Software Testing Learning Environment
    Clarke, Peter J.
    Davis, Debra L.
    Buckley, Ingrid A.
    Potvin, Geoff
    Thirunarayanan, Mandayam
    Jones, Edward L.
    ACM TRANSACTIONS ON COMPUTING EDUCATION, 2022, 22 (02)
  • [40] A Machine Learning Approach for Statistical Software Testing
    Baskiotis, Nicolas
    Sebag, Michele
    Gaudel, Marie-Claude
    Gouraud, Sandrine
    20TH INTERNATIONAL JOINT CONFERENCE ON ARTIFICIAL INTELLIGENCE, 2007, : 2274 - 2279