Разделы

Цифровизация

Как ИИ и Digital Q меняет профессию тестировщика: опыт «Диасофт»

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

Как было раньше

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

Что изменилось

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

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

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

Как это работает

Создание автотестов с помощью ИИ включает четыре ключевых шага:

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

Тестировщик указывает тест-кейс в бизнес-терминах тестируемого сервиса.

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

На основе контракта создается черновик теста, проводится первая итерация.

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

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

Обычно для получения стабильного результата требуется 2-3 итерации.

После нескольких итераций самостоятельной отладки теста ИИ получается стабильный и качественный автотест. Ключевое его преимущество — это адаптивность к реальной среде, а не просто синтаксическое соответствие контракту.

Важно, что инфраструктура ИИ развернута в закрытом контуре «Диасофт», данные не передаются вовне и не хранятся в зарубежных дата-центрах.

Эволюция роли тестировщика

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

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

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

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

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

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

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

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