Застосування машинного навчання моделей для підвищення ефективності автоматизованого тестування програмного забезпечення

Ключові слова: глибоке навчання моделі, навчання з підкріпленням, пріоритизація сценаріїв тестування ПЗ, CI/CD-процеси, гібридні підходи

Анотація

Наведено особливості застосування методів машинного навчання 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

Опубліковано
2025-06-26
Як цитувати
Торський, О. І., & Грицюк, Ю. І. (2025). Застосування машинного навчання моделей для підвищення ефективності автоматизованого тестування програмного забезпечення. Scientific Bulletin of UNFU, 35(4), 142-149. https://doi.org/10.36930/40350416
Розділ
Інформаційні технології

Статті цього автора (авторів), які найбільше читають

1 2 3 > >>