Аналитика

ИИ в тестировании: как «Диасофт» автоматизирует API-тесты с помощью Digital Q

Преобразование роли тестировщика с помощью ИИ и Digital Q: кейс «Диасофт»

В «Диасофт» с помощью искусственного интеллекта в рамках платформы Digital Q.DevOps удалось полностью автоматизировать генерацию тестов для API и событий. Теперь все программные решения компании, построенные на микросервисной архитектуре в экосистеме Digital Q, в обязательном порядке проходят проверку автоматически созданными тестами. Наличие автоматического тестового покрытия стало непременным требованием для выхода любого продукта в релиз.

Предыдущий подход

Для разработки микросервисов и проектирования взаимодействий между ними (контракты API и событий) в компании применяется low-code платформа Digital Q.Archer, которая генерирует код сервисов. Ранее автоматизация затрагивала лишь создание автотестов для стандартных CRUD API и событий; для сложных API и событий с уникальной бизнес-логикой автоматическая генерация готовых тестов была невозможна. Из-за этого специалистам по тестированию приходилось разрабатывать такие тесты вручную, что требовало значительных трудозатрат.

Внесенные изменения

Теперь при появлении новых или модификации существующих микросервисов задача создания или обновления автотестов для API и событий передается искусственному интеллекту. Если уровень тестового покрытия оказывается ниже установленного порога, дальнейшее продвижение сервиса по pipeline к заказчику приостанавливается.

«Мы внедрили принцип обязательного тестового покрытия. Это обязательное условие. Продукт, не прошедший автотесты, не включается в релиз»,— подчеркивают разработчики «Диасофт».

Принцип работы

Процесс генерации автотестов с использованием ИИ состоит из четырех основных этапов:

Тестировщик формирует системный промт — набор настраиваемых параметров, включая ссылку на Swagger-документацию со описанием всех API и событий продукта, а также адрес тестового стенда.

Специалист по тестированию описывает сценарий проверки, используя бизнес-терминологию тестируемого сервиса.

Затем тестировщик определяет режим работы искусственного интеллекта: поиск исключительно API-методов, только событий или формирование комплексных проверок с построением сложных последовательностей. Весь диалог с ИИ осуществляется через понятный визуальный интерфейс. Система искусственного интеллекта получает API-контракты из Digital Q.Archer и доступ к тестовому окружению.

На основании контракта формируется черновик теста, после чего выполняется его первичный прогон.

Анализируя контракты, ИИ, подобно квалифицированному инженеру, генерирует код автотеста на заданном языке — в «Диасофте» для этих целей применяется Groovy, схожий с Java. Принципиально важно не то, на каком языке пишет ИИ, а сам результат его работы — технология гибко настраивается под другие языки, такие как Python или Java.

ИИ выполняет автотест в тестовом окружении, изучает полученные результаты, и в случае сбоя выявляет зависимости, дорабатывает тест и запускает его повторно.

Как правило, для достижения стабильного и корректного результата требуется 2-3 цикла таких доработок.

После нескольких итераций самостоятельной отладки ИИ формирует стабильный и надежный автотест. Его главное достоинство — способность адаптироваться к реальным условиям работы, а не просто формальное следование спецификациям контракта.

Ключевой момент: инфраструктура ИИ развернута в изолированном контуре «Диасофт», данные не покидают его пределов и не размещаются в зарубежных центрах обработки данных.

Преобразование роли тестировщика

В новых реалиях тестировщику необходимо сосредоточиться на составлении четкой и качественной инструкции для ИИ (тест-сценария). Чем точнее и детальнее формулировка, тем быстрее и правильнее будет итоговый результат. Остальную часть задач по созданию автотеста берет на себя искусственный интеллект.

Вторая важная обязанность тестировщика — содержательная проверка готового автотеста и ответ на принципиальный вопрос: соответствует ли автоматически созданная логика исходному тест-сценарию, бизнес-процессу и функциональности продукта.

«Для принятия результата тестировщик должен отлично разбираться в своем продукте. Оценить, насколько код релевантен бизнес-логике, может только специалист, глубоко понимающий продукт», — подчеркивают разработчики компании «Диасофт».

Внедрение ИИ приводит к кардинальным изменениям: объем рутинного труда тестировщика сокращается, но его работа становится качественно сложнее. От него теперь требуются экспертные знания, аналитические способности и глубокое понимание предметной области — уровень квалификации должен быть выше.

ИИ освобождает от шаблонных операций, позволяя сфокусироваться на главном — обеспечении качества кода и бизнес-ценности через глубокое понимание продукта.

Таким образом, ИИ не заменяет человека, а становится его мощным помощником. ИИ берет на себя алгоритмическую, рутинную работу по генерации тестового кода, а за тестировщиками остается проверка соответствия логики теста бизнес-сценариям. Такой симбиоз позволяет не только ускорить процессы, но и гарантировать надежность и высокое качество кода.

Платформа Digital Q.DevOps входит в число ведущих решений в рейтинге DevOps-платформ для комплексной автоматизации процессов разработки, составленном CNews Market.

Рекламаerid:2W5zFGGap9WРекламодатель: ООО «Диасофт Экосистема»ИНН/ОГРН: 9715403607/1217700330540Сайт: https://www.diasoft.ru/
Поделиться:

0 Комментариев

Оставить комментарий

Обязательные поля помечены *
Ваш комментарий *
Категории