Застосування машинного навчання моделей для підвищення ефективності автоматизованого тестування програмного забезпечення
Анотація
Наведено особливості застосування методів машинного навчання ML (англ. Machine Learning) моделей для автоматизованого тестування програмного забезпечення (ПЗ) у контексті сучасних практик CI/CD (англ. Continuous Integration / Continuous Delivery). Виявлено, що підходи, засновані на глибокому навчанні, навчанні з підкріпленням та використанні історичних логів демонструють найбільшу ефективність їх застосування. З'ясовано, що поєднання ML-моделей з метаевристичними алгоритмами здатне покращити процес автоматичного генерування тестів й істотно зменшити кількість нерелевантних сценаріїв тестування ПЗ. Охарактеризовано закономірності використання класифікації тестових сценаріїв, кластеризації логів і скорочення обсягу даних у процесах тестування ПЗ. Оцінено вплив обмежень, таких як недостатній обсяг навчальних даних, складність інтеграції у реальні процеси CI/CD та обмежена масштабованість моделей на якість застосування ML у тестуванні ПЗ. Здійснено змістовний аналіз та узагальнення наукових праць у період з 2012 по 2025 рр. для окреслення перспективних етапів подальшого дослідження. Визначено доцільність подальшого вивчення інструментів машинного навчання моделей66 для динамічного оновлення програмних продуктів і значного зменшення витрат на тестування ПЗ. Результати дослідження підтвердили, що застосування адаптивних моделей онлайн-навчання дає змогу підвищити гнучкість тестових систем у динамічних середовищах розроблення ПЗ. Особливу увагу приділено підходам до пріоритизації тестів на підставі історичних даних та CI-логів, оскільки це сприяє швидкому виявленню помилок у нових версіях ПЗ. У роботі зроблено акцент на практичній значущості гібридних підходів, які поєднують можливості машинного навчання моделі та алгоритмів евристичного пошуку адекватних тестових сценаріїв. Виокремлено основні труднощі, з якими стикаються дослідники, зокрема – потреба у якісній підготовці даних та ефективному обробленні великих обсягів телеметрії. Зазначено, що подальший розвиток у цій галузі вимагає тісної взаємодії між тестувальниками, аналітиками даних та розробниками тестових інтелектуальних систем.
Завантаження
Посилання
Abdennebi, A., Tuncay, A., Yilmaz, C., Koyuncu, A., & Gungor, O. (2023, May). LSTM-AE for anomaly detection on multivariate telemetry data. In 2023 IEEE/ACIS 21st International Conference on Software Engineering Research, Management and Applications (SERA) (pp. 90–97). IEEE. https://doi.org/10.1109/SERA57763.2023.10197673
Abo-eleneen, A., Palliyali, A., & Catal, C. (2023). The role of Reinforcement Learning in software testing. Information and Software Technology, 164, article ID 107325. https://doi.org/10.1016/j.infsof.2023.107325
Arasteh, B., Arasteh, K., & Ghaffari, A. (2025). An automatic software test-generation method to discover the faults using fusion of machine learning and horse herd algorithm. The Journal of Supercomputing, 81(5), 1–36. https://doi.org/10.1007/s11227-025-07219-5
Ariffin, M. A., Ibrahim, R., Ibrahim, I. S., & Wahab, J. A. (2022). Test cases prioritization using ant colony optimization and firefly algorithm. International Journal of Engineering Trends and Technology, 70(3), 22–28. https://doi.org/10.14445/22315381/IJETT-V70I3P203
Behera, A., & Acharya, A. A. (2025). An Effective GRU-Based Deep Learning Method for Test Case Prioritization in Continuous Integration Testing. Procedia Computer Science, 258, 4070–4083. https://doi.org/10.1016/j.procs.2025.04.658
Birchler, C., Khatiri, S., Bosshard, B., Gambi, A., & Panichella, S. (2023). Machine learning-based test selection for simulation-based testing of self-driving cars software. Empirical Software Engineering, 28(3), article ID 71. https://doi.org/10.1007/s10664-023-10286-y
Braiek, H. B., & Khomh, F. (2019, September). Deepevolution: A search-based testing approach for deep neural networks. In 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME) (pp. 454–458). IEEE. https://doi.org/10.1109/ICSME.2019.00078
Corradini, D., Montolli, Z., Pasqua, M., & Ceccato, M. (2024, October). DeepREST: Automated Test Case Generation for REST APIs Exploiting Deep Reinforcement Learning. In Proceedings of the 39th IEEE/ACM International Conference on Automated Software Engineering (pp. 1383–1394). https://doi.org/10.1145/3691620.3695511
Fontes, A., & Gay, G. (2023). The integration of machine learning into automated test generation: A systematic mapping study. Software Testing, Verification and Reliability, 33(4), article ID e1845. https://doi.org/10.1002/stvr.1845
Gerber, D., Meitz, L., Rosenbauer, L., & Hähner, J. (2024). Unsupervised anomaly detection in continuous integration pipelines. URL: https://opus.bibliothek.uni-augsburg.de/opus4/frontdoor/index/index/docId/117136
Gölcük, İ., Ozsoydan, F. B., & Durmaz, E. D. (2025). Reinforcement and opposition-based learning enhanced weighted mean of vectors algorithm for global optimization and feature selection. Knowledge-Based Systems, article ID 113626. https://doi.org/10.1016/j.knosys.2025.113626
Gorla, D., Kumar, S., Lorenzini, P. N. R., & Alipourfaz, A. (2025, March). CubeTesterAI: Automated JUnit Test Generation Using the LLaMA Model. In 2025 IEEE Conference on Software Testing, Verification and Validation (ICST) (pp. 565–576). IEEE. https://arxiv.org/pdf/2504.15286
He, S., He, P., Chen, Z., Yang, T., Su, Y., & Lyu, M. R. (2021). A survey on automated log analysis for reliability engineering. ACM computing surveys (CSUR), 54(6), 1–37. https://doi.org/10.1145/3460345
Kandil, P., Moussa, S., & Badr, N. (2017). Cluster‐based test cases prioritization and selection technique for agile regression testing. Journal of Software: Evolution and Process, 29(6), article ID e1794. https://doi.org/10.1002/smr.1794
Khan, M. A., Azim, A., Liscano, R., Smith, K., Chang, Y. K., Tauseef, Q., & Seferi, G. (2024, April). Machine learning-based test case prioritization using hyperparameter optimization. In Proceedings of the 5th ACM/IEEE International Conference on Automation of Software Test (AST 2024) (pp. 125–135). https://doi.org/10.1145/3644032.3644467
Ma, L., Zhang, F., Sun, J., Xue, M., Li, B., Juefei-Xu, F., & Wang, Y. (2018, October). Deepmutation: Mutation testing of deep learning systems. In 2018 IEEE 29th international symposium on software reliability engineering (ISSRE) (pp. 100–111). IEEE. https://doi.org/10.48550/arXiv.1805.05206
Martin-Lopez, A., Segura, S., & Ruiz-Cortés, A. (2022, November). Online testing of RESTful APIs: Promises and challenges. In Proceedings of the 30th ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering (pp. 408–420). https://doi.org/10.1145/3540250.3549144
Ning, Y., Bai, Z., Wei, J., Suganthan, P. N., Xing, L., Wang, J., & Song, Y. (2025). A meta-heuristic algorithm combined with deep reinforcement learning for multi-sensor positioning layout problem in complex environment. Expert Systems with Applications, 261, article ID 125555. https://doi.org/10.1016/j.eswa.2024.125555
Rahman, S. M. M., & Eisty, N. U. (2024). Introducing ensemble machine learning algorithms for automatic test case generation using learning based testing. arXiv preprint arXiv:2409.04651. https://doi.org/10.48550/arXiv.2409.04651
Ramírez Sánchez, J. E., Chacón Sartori, C., & Blum, C. (2023, July). Q-Learning ant colony optimization supported by deep learning for target set selection. In Proceedings of the Genetic and Evolutionary Computation Conference (pp. 357–366). https://doi.org/10.1145/3583131.3590396
Rehman, F. U., & Srinivasan, M. (2023, July). Metamorphic testing for machine learning: Applicability, challenges, and research opportunities. In 2023 IEEE International Conference On Artificial Intelligence Testing (AITest) (pp. 34–39). IEEE. https://doi.org/10.1109/AITest58265.2023.00014
Salam, M. A., Abdel-Fattah, M., & Moemen, A. A. (2022). A survey on software testing automation using machine learning techniques. International Journal of Computer Applications, 183(51), 12–19. https://doi.org/10.5120/ijca2022921919
Saleh, S. M., Sayem, I. M., Madhavji, N., & Steinbacher, J. (2024, November). Advancing Software Security and Reliability in Cloud Platforms through AI-based Anomaly Detection. In Proceedings of the 2024 on Cloud Computing Security Workshop (pp. 43–52). https://doi.org/10.1145/3689938.3694779
Sánchez Vinces, B. V., Schubert, E., Zimek, A., & Cordeiro, R. L. (2025). A comparative evaluation of clustering-based outlier detection. Data Mining and Knowledge Discovery, 39(2), article ID 13. https://doi.org/10.1007/s10618-024-01086-z
Shankar, R., & Sridhar, D. (2024). An Improved Deep Learning Based Test Case Prioritization Using Deep Reinforcement Learning. International Journal of Intelligent Engineering & Systems, 17(1), 771–782. https://doi.org/10.22266/ijies2024.0229.64
Spieker, H., Gotlieb, A., Marijan, D., & Mossige, M. (2017, July). Reinforcement learning for automatic test case prioritization and selection in continuous integration. In Proceedings of the 26th ACM SIGSOFT international symposium on software testing and analysis (pp. 12–22). https://doi.org/10.1145/3092703.3092709
Tessari, M., & Iacca, G. (2022, July). Reinforcement learning based adaptive metaheuristics. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (pp. 1854–1861). https://doi.org/10.1145/3520304.3533983
Tsai, C. Y., & Taylor, G. W. (2022). Deeprng: Towards deep reinforcement learning-assisted generative testing of software. arXiv preprint arXiv: 2201.12602. https://doi.org/10.48550/arXiv.2201.12602
Tsai, C. Y., & Taylor, G. W. (2022). Deeprng: Towards deep reinforcement learning-assisted generative testing of software. arXiv preprint arXiv: 2201.12602. https://doi.org/10.48550/arXiv.2201.12602
Vajda, D. L., Do, T. V., Bérczes, T., & Farkas, K. (2024). Machine learning-based real-time anomaly detection using data pre-processing in the telemetry of server farms. Scientific Reports, 14(1), article ID 23288. https://doi.org/10.1038/s41598-024-72982-z
Wette, S., & Heinrichs, F. (2024). OML-AD: Online Machine Learning for Anomaly Detection in Time Series Data. arXiv preprint arXiv: 2409.09742. https://doi.org/10.48550/arXiv.2409.09742
Xiao, D., Liu, Z., Yuan, Y., Pang, Q., & Wang, S. (2022). Metamorphic testing of deep learning compilers. Proceedings of the ACM on Measurement and Analysis of Computing Systems, 6(1), 1–28. https://doi.org/10.1145/3508035
Yoo, S., & Harman, M. (2012). Regression testing minimization, selection and prioritization: a survey. Software testing, verification and reliability, 22(2), 67–120. https://doi.org/10.1002/stvr.430
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. https://doi.org/10.1109/TSE.2019.2962027

Ця робота ліцензується відповідно до Creative Commons Attribution 4.0 International License.



