Adaptive Test Optimization: Using Reinforcement Learning to Improve Software Testing Strategies

Authors

  • Gopinath Kathiresan Software Quality Engineering, Apple Inc, USA

Keywords:

Reinforcement learning, adaptive test optimization, software testing, machine learning in testing, AI-driven test automation, test case prioritization, defect detection, DevOps integration

Abstract

Software testing strategies receive an enhancement through reinforcement learning technology which delivers adaptive test optimization by performing dynamic test case selection and ranking and test case productions. Software testing techniques that use manual and automated approaches encounter difficulties because they are inefficient while being costly to execute and unable to reconfigure for fast-moving software systems. Self-learning testing frameworks enabled by reinforcement learning provide solutions to these issues through optimization of test execution using historic performance results and current software modifications. The research describes essential RL methods implemented in software testing which cover test case prioritization together with defect detection capabilities and dynamic testing code generation. The analysis presents actual cases where RL-based testing tools significantly improve both testing efficiency and faulty program identification capabilities. Testing based on AI technologies encounters three primary challenges which include complex calculations and limited data access and system-related ethical limits. AI-driven software testing will face two evolving trends in the future as experts intend to merge RL with DevOps toolchains and improve explainable AI capabilities to establish higher trust in AI testing systems.

References

Zhang, J. M., Harman, M., Ma, L., & Liu, Y. (2020). Machine learning testing: Survey, landscapes and horizons. IEEE Transactions on Software Engineering, 48(1), 1-36.

Bouktif, S., Fiaz, A., Ouni, A., & Serhani, M. A. (2018). Optimal deep learning lstm model for electric load forecasting using feature selection and genetic algorithm: Comparison with machine learning approaches. Energies, 11(7), 1636.

Gao, X., Shan, C., Hu, C., Niu, Z., & Liu, Z. (2019). An adaptive ensemble machine learning model for intrusion detection. Ieee Access, 7, 82512-82521.

Amershi, S., Begel, A., Bird, C., DeLine, R., Gall, H., Kamar, E., ... & Zimmermann, T. (2019, May). Software engineering for machine learning: A case study. In 2019 IEEE/ACM 41st International Conference on Software Engineering: Software Engineering in Practice (ICSE-SEIP) (pp. 291-300). IEEE.

Wan, Y., Zhao, Z., Yang, M., Xu, G., Ying, H., Wu, J., & Yu, P. S. (2018, September). Improving automatic source code summarization via deep reinforcement learning. In Proceedings of the 33rd ACM/IEEE international conference on automated software engineering (pp. 397-407).

Desjardins, C., & Chaib-Draa, B. (2011). Cooperative adaptive cruise control: A reinforcement learning approach. IEEE Transactions on intelligent transportation systems, 12(4), 1248-1260.

Arcelli Fontana, F., Mäntylä, M. V., Zanoni, M., & Marino, A. (2016). Comparing and experimenting machine learning techniques for code smell detection. Empirical Software Engineering, 21, 1143-1191.

Dargan, S., Kumar, M., Ayyagari, M. R., & Kumar, G. (2020). A survey of deep learning and its applications: a new paradigm to machine learning. Archives of computational methods in engineering, 27, 1071-1092.

El-Tantawy, S., Abdulhai, B., & Abdelgawad, H. (2013). Multiagent reinforcement learning for integrated network of adaptive traffic signal controllers (MARLIN-ATSC): methodology and large-scale application on downtown Toronto. IEEE transactions on Intelligent transportation systems, 14(3), 1140-1150.

Liu, Y., Khoshgoftaar, T. M., & Seliya, N. (2010). Evolutionary optimization of software quality modeling with multiple repositories. IEEE Transactions on Software Engineering, 36(6), 852-864.

Sun, S., Cao, Z., Zhu, H., & Zhao, J. (2019). A survey of optimization methods from a machine learning perspective. IEEE transactions on cybernetics, 50(8), 3668-3681.

Thakur, A., & Sharma, G. (2018, July). Neural network-based test case prioritization in software engineering. In International Conference on Advanced Informatics for Computing Research (pp. 334-345). Singapore: Springer Singapore.

Kiran, B. R., Sobh, I., Talpaert, V., Mannion, P., Al Sallab, A. A., Yogamani, S., & Pérez, P. (2021). Deep reinforcement learning for autonomous driving: A survey. IEEE transactions on intelligent transportation systems, 23(6), 4909-4926.

Xie, J., Yu, F. R., Huang, T., Xie, R., Liu, J., Wang, C., & Liu, Y. (2018). A survey of machine learning techniques applied to software defined networking (SDN): Research issues and challenges. IEEE Communications Surveys & Tutorials, 21(1), 393-430.

Ahmad, Z., Shahid Khan, A., Wai Shiang, C., Abdullah, J., & Ahmad, F. (2021). Network intrusion detection system: A systematic study of machine learning and deep learning approaches. Transactions on Emerging Telecommunications Technologies, 32(1), e4150.

Li, Y., Zheng, W., & Zheng, Z. (2019). Deep robust reinforcement learning for practical algorithmic trading. IEEE Access, 7, 108014-108022.

Xiao, L., Wan, X., Lu, X., Zhang, Y., & Wu, D. (2018). IoT security techniques based on machine learning: How do IoT devices use AI to enhance security?. IEEE Signal Processing Magazine, 35(5), 41-49.

Liang, E., Liaw, R., Nishihara, R., Moritz, P., Fox, R., Goldberg, K., ... & Stoica, I. (2018, July). RLlib: Abstractions for distributed reinforcement learning. In International conference on machine learning (pp. 3053-3062). PMLR.

kumar Karne, V., Noone Srinivas, Nagaraj Mandaloju, & Parameshwar Reddy Kothamali. (2020). Reinforcement Learning for Optimizing Test Case Execution in Automated Testing. Innovative Research Thoughts, 6(3), 13–27. https://doi.org/10.36676/irt.v6.i3.1494

Wickramasinghe S., (2021) Test Automation Frameworks: The Ultimate Guide. https://www.bmc.com/blogs/test-automation-frameworks/

Abdullahi S., Zakari A., Abdu H., Nura A., Zayyad M. A., Suleiman S., Adamu A., Mashasha A. S., Software Testing: Review on Tools, Techniques and Challenges.

Fahad Mon, B.; Wasfi, A.; Hayajneh, M.; Slim, A.; Abu Ali, N. Reinforcement Learning in Education: A Literature Review. Informatics 2023, 10, 74. https:// doi.org/10.3390/informatics10030074

Published

31-01-2024

How to Cite

Kathiresan, G. (2024). Adaptive Test Optimization: Using Reinforcement Learning to Improve Software Testing Strategies. Well Testing Journal, 33(S2), 715–732. Retrieved from https://welltestingjournal.com/index.php/WT/article/view/154

Issue

Section

Original Research Articles

Similar Articles

1 2 3 4 5 6 7 8 9 10 > >> 

You may also start an advanced similarity search for this article.