Ключевые слова: тестирование программного обеспечения, верификация, искусственные нейронные сети, регрессионное тестирование
Решение задачи оптимизации регрессионного тестирования с использованием нейросетевого подхода
УДК 004.054
DOI: 10.26102/2310-6018/2020.28.1.032
Жизненный цикл разработки любого программного обеспечения в обязательном порядке сопровождается активностями по верификации и тестированию продукта. Среди всех процессов, лежащих в основе тестирования ПО, наиболее ресурсозатратным, но вместе с тем обязательным для исполнения, является регрессионное тестирование. Главная задача регрессионного тестирования заключается в проверке, что внесенные в код продукта изменения не повлияют на уже реализованную и протестированную функциональность разрабатываемой системы. Указанная задача определяет необходимость в запуске регрессионных проверок после выпуска каждой новой версии программного обеспечения. Однако в условиях ограниченности ресурсов при регрессионном тестировании из полного набора проверок, как правило, запускаются лишь выборочные тестовые кейсы. Этот факт обуславливает задачу оптимального выбора максимально приоритетных для запуска регрессионных проверок. Решением поставленной задачи может выступать использование системы управления тестированиям, позволяющей определять приоритеты тест-кейсов в зависимости от внесенных в код продукта правок, основанной на нейросетевой модели. Функционирование такой системы возможно благодаря сбору и анализу данных об изменениях в коде из системы контроля версий и дальнейшему использованию этой информации в качестве входных данных для искусственной нейронной сети. Выходными данными в такой модели являются результаты выполнения регрессионных проверок, то есть факт обнаружения ошибки или удостоверения, что продукт работает ожидаемым образом. Таким образом, обучение нейронной сети проходит на основе реальных данных, полученных на основании результатов запуска тестов на этапе разработки программного обеспечения. Обученная нейронная сеть способна приоритизировать тестовые случаи и оптимизировать ресурсы на проведение регрессионного тестирования.
1. Данилов А.Д., Мугатина В.М. Верификация и тестирование сложных программных продуктов на основе нейросетевых моделей. Вестник Воронежского государственного технического университета. 2016;12(6):62-67.
2. Данилов А.Д., Фёдоров А.И. Иерархическая структура процесса тестирования сложного программного обеспечения. Вестник Воронежского государственного технического университета. 2014;10(3-1):18-21.
3. Danilov A.D., Samotsvet D.A., Mugatina V.M. Using neural network models in the quality management system for the software defect prediction. IOP conference series: Materials science and engineering. International Workshop "Advanced Technologies in Material Science, Mechanical and Automation Engineering”. MIP: Engineering. 2019
4. Данилов А.Д., Мугатина В.М. Применение аппарата искусственных нейронных сетей в задаче оптимизации процесса тестирования программного обеспечения// Вестник Воронежского государственного технического университета. 2018;14 (2):7-14.
Ключевые слова: тестирование программного обеспечения, верификация, искусственные нейронные сети, регрессионное тестирование
Для цитирования: Данилов А.Д., Мугатина В.М. Решение задачи оптимизации регрессионного тестирования с использованием нейросетевого подхода. Моделирование, оптимизация и информационные технологии. 2020;8(1). URL: https://moit.vivt.ru/wp-content/uploads/2020/02/DanilovMugatina_1_20_1.pdf DOI: 10.26102/2310-6018/2020.28.1.032
Опубликована 31.03.2020