Image

Прощай, рутина: как наша команда QA в 3 раза ускорила работу с помощью собственного ИИ-агента

31d9e6cae76336e69f618fb0b4694554

Привет, меня зовут Сергей, я занимаюсь автоматизаций тестирования в компании ITFB Group, и хочу поделиться опытом внедрения AI-агентов в наши процессы.

Наверняка всем тестировщикам знакома ситуация, когда остаётся всего пара дней до релиза, а команда тестирования всё ещё работает над задачами по новым фичам и не может приступать к регрессу? Или перед передачей новой версии заказчику тестировщики успевают проверить только smoke-сценарии, засиживаясь допоздна? А до написания чек-листов и тест-кейсов по новым функциям руки дойдут вообще не скоро. У нас тоже такое нет-нет, да и случается.

Самое первое, что приходит в голову после таких авралов – нам нужна автоматизация регресса. Но как в кратчайшие сроки сделать из ручных сценариев автотесты, если никто в команде тестирования не пишет код, и нужно изучать всё с нуля. И это при том, что и так ни на что не хватает времени? На помощь придёт вездесущий AI!

Чтобы избежать повторения описанной выше ситуации, ускорить процесс тестирования, снизить time-to-market, не потерять при этом в качестве, без увеличения издержек, мы разрабатываем своего AI-агента для тестирования на базе нашей платформы Agentum AI. Агент нацелен на максимальную автоматизацию всех рутинных задач команды тестирования: от тестирования исходных требований, составления чек-листов по новому функционалу, до автоматизации end-to-end сценариев.

Самой сложной, в плане реализации с помощью AI-инструментов, задачей является автоматизация пользовательских UI-сценариев. Даже при классическом подходе к написанию автотестов такие сценарии являются самыми трудоёмкими, при этом тесты получаются не такими стабильными как unit или интеграционные. В этой статье мы сконцентрируемся на решении этой нетривиальной задачи.

Чтобы не изобретать свой велосипед, мы провели анализ имеющихся AI-решений в области UI-автотестов, поэкспериментировали с несколькими из них и, взвесив все за и против, выбрали активно развивающееся отечественное решение для автоматизации тестов на естественном языке — BugBuster. Мы интегрировали его с нашей платформой так, чтобы передавать на вход требования из тикетов Jira или страниц Confluence и на выходе получать автотесты в системе BugBuster.

Что умеет наш AI-тестировщик

Наша платформа Agentum AI – это универсальная основа для внедрения инструментов искусственного интеллекта во все процессы компании, начиная от набора новых сотрудников и заканчивая продажей продуктов. Наш департамент один из первых начал прорабатывать возможности AI для автоматизации рутинных задач, которые составляют значительную часть работы тестировщика.

На данный момент наш AI-тестировщик умеет:

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

  2. Составлять чек-листы на основе задач в Jira и документации в Confluence с последующим их импортом в TMS-систему.

  3. Генерировать детализированные тест-кейсы на основе требований из Jira и Confluence и выгружать их в TMS.

  4. Отправлять сгенерированные тест-кейсы на естественном языке на автоматизацию в BugBuster.

Схема работы AI-агента для тестирования
Схема работы AI-агента для тестирования

Как выглядит наш агент на платформе Agentum AI:

38c0ee8c36867530d3448381b543493e

Работа с агентом

На данный момент работа с агентом представляет из себя обычный диалог с AI-чатом, но в отличии от обычного чата наш агент умеет получать необходимые ему данные из таких систем как Jira и Confluence, если указать это в запросе, а также выгружать сгенерированные тест-кейсы в нужную нам TMS систему или в BugBuster для дальнейшей автоматизации.

Генерация тест-кейсов на основе требований из Confluence:

95e08f2812482cced18af160d52a2c1f

Выгрузка сгенерированных результатов в BugBuster:

3e852b30ea39084a0c2e55216e06e7a2

Контекст внедрения

Внедрение нашего AI-агента мы начали сразу на нескольких проектах компании. На только начинающихся проектах мы используем агент для тестирования требований и создания тестовой документации, а на более зрелых автоматизируем уже имеющиеся ручные сценарии. Важно отметить, что на текущий момент BugBuster поддерживает автоматизацию только веб приложений, но в перспективе планируется добавить поддержку и мобильного тестирования. Сейчас мы используем облачную версию платформы, но существует и on-premise решение, которое можно развернуть на собственной инфраструктуре и не переживать за чувствительные данные, которые не хочется отправлять в облако.

Команда тестирования смогла быстро освоить инструментарий нашего AI-тестировщика и начала его активное использование. Для базового освоения инструмента достаточно было провести для коллег часовой мастер-класс, по итогу которого они смогли сгенерировать свои первые тест-кейсы и даже автоматизировать их выполнение без знания программирования. Это впечатляющий результат, если сравнивать его с временными затратами на освоение языка программирования и его библиотек автоматизации, которое занимает, в лучшем случае, несколько недель или месяцев интенсивного обучения.

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

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

BugBuster имеет привычный тестировщикам интерфейс TMS-системы с разделением на проекты, тест-сьюты и возможностью создания тестовых прогонов:

12db8a22ccf1cf365ac8f207b7c4a441

Тест-кейсы в системе представляют из себя набор шагов и проверок, описанных на естественном языке. Жёсткого шаблона для описания шагов нет — достаточно, чтобы в шаге были указаны действие и объект. Это позволяет системе понять, какое действие требуется выполнить и над чем именно. Наш AI-тестировщик генерирует кейсы в адаптированном под BugBuster формате, чтобы минимизировать необходимость исправления сценария вручную.

Пример сценария в интерфейсе BugBuster:

05750449635acecb2b77d069415a9d23

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

97c62f1492afc41becf66cb720fc423e

После завершения теста можно посмотреть запись видео его выполнения.

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

f50f247dde730c4181bf1cb9a0c2a421

По окончании прогона нам доступны детальные результаты, позволяющие просмотреть логи выполнения каждого из тестов:

2e171122d72371886db17df3bee972bd

Помимо этого, доступен trace-лог в реальном времени с шагами, таймингами, скриншотами и debug-данными.

Сравнение с классическим подходом к тестированию

Создание тестовой документации

Несомненно, наш AI-тестировщик является лишь помощником настоящему специалисту и не освобождает от необходимости изучения требований к тестируемому продукту, но проверка корректности этих требований и создание тестовой документации на их основе значительно упрощается и ускоряет все эти процессы. Специалисту, по большей части, требуется только контролировать полученные результаты и корректировать их. Использование нашего агента также решает одну из самых сложных проблем, возникающих на старте любого проекта, оно позволяет без лишних переживаний приступить к работе, ведь начать – всегда самое сложное, а наш AI-тестировщик без лишних раздумий даст вам основу, отталкиваться от которой будет намного легче. Сравним скорость выполнения задач ручного тестировщика с применением AI-агента и без него на основе нашей проектной статистики.

Таблица 1. Сравнение скорости работы с документацией

Задача

Без применения AI-агента

С применением AI-агента

Комментарий

Тестирование требований

1 — 4 часа / требование

0.5 — 2 часа / требование

AI-агент быстро находит формальные противоречия и пропущенные условия. Но человек должен проверить контекст и сформулировать вопросы бизнесу.

Создание чек-листов

1 — 2 часа / требование

20 — 40 минут / требование

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

Создание тест-кейсов

3 — 6 часов / требование

1 – 2 часа / требование

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

 

Таким образом внедрение AI-агента в решение рассмотренных задач команды тестирования в среднем ускоряет работу специалиста в 3 раза. При этом нужно учитывать, что при использовании агента качество результата по-прежнему будет зависеть от многих факторов, таких как качество исходных данных, сложность логики продукта и опыт специалиста по тестированию. В качестве дополнительных преимуществ применения AI-тестировщика можно выделить повышение полноты покрытия (ИИ реже забывает очевидные варианты проверок, которые человек может упустить), снижение когнитивной нагрузки (AI экономит силы специалиста в рутинных задачах, что позволяет сконцентрироваться на сложных сценариях), унификация формата (ИИ генерирует тестовую документацию в едином стиле и упрощает их использование и поддержку другими членами команды).

Разработка автотестов

На наших проектах мы провели ряд экспериментов, которые позволили сравнить скорость разработки автотестов с использованием традиционных технологий автоматизации (Python + Selenium) и нашего AI-агента в связке с BugBuster. В процессе мы по заранее описанному ручному тест-кейсу реализовывали один и тот же сценарий на языке Python и в системе BugBuster, засекая время, необходимое для создания работоспособного автотеста. Тест на Python мы писали с использованием уже подготовленного фреймворка, но все шаги сценария реализовывались «с нуля». В эксперименте принимали участие несколько сотрудников с разным опытом, чтобы можно было сравнить эффект от внедрения BugBuster у начинающих специалистов и специалистов с опытом.

Наш эксперимент показал значительное увеличение скорости создания тестов при переходе от написания их на Python к использованию BugBuster. Опытный специалист по автоматизации в среднем тратит в 4,5 раз меньше времени на создание сценария в BugBuster по сравнению с традиционным подходом (Python + Selenium), а работа начинающего специалиста ускорилась в среднем в целых 10 раз. Дополнительным преимуществом является почти полное отсутствие какого-либо порога для входа в автоматизацию для ручных тестировщиков. Стоит отметить, что скорость разработки автотестов на Python и в BugBuster при использовании уже реализованных тестовых шагов сопоставима, особенно если в автотестах используется BDD фреймворк.

Давайте рассмотрим преимущества и недостатки использования AI-агента по сравнению с классическим подходим к разработке автотестов.

К преимуществам можно отнести:

  • Быстрый старт автоматизации

  • Минимальный порог входа для специалистов

  • Возможность превращения уже готовых ручных сценариев в автотесты

  • Высокая стабильность автотестов

К недостаткам можно отнести:

  • Подходит не для всех сценариев

  • Долгое время выполнения автотестов

  • Сценарии необходимо адаптировать

  • On-premise решение требует наличия GPU-ресурсов (например, видеокарт уровня RTX 5090 или 2×4090)

  • Сложность встраивания в имеющийся CI/CD процесс

Проведение регрессионного тестирования

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

Таблица 2. Сравнение скорости выполнения тестов

Сценарий

Ручное выполнение

Python + Selenium

BugBuster

15 шагов

600 сек

25 сек

150 сек

Стабильность автотестов

Если сравнивать стабильность работы классических автотестов и тестов, созданных с помощью AI-агента, то второй подход избавляет нас от основной боли автоматизаторов тестирования, связанной с изменениями локаторов веб-элементов. BugBuster даже не заметит, если у элемента изменится тип в DOM-дереве или если он переместится на другой конец интерфейса, AI найдет новые координаты элемента за то же время, что и до этих изменений, в то время как классический автотест упадёт, а специалисту придется искать причину падения, подбирать новый локатор, исправлять автотест, отлаживать его, проходить через процедуру код-ревью, и только после этого мы получим работающий тест в регрессионном наборе.

Подводные камни

По результатам наших экспериментов с BugBuster мы выявили, что он подходит не для всех тестовых сценариев, что ограничивает его применение. Например, платформа пока не умеет генерировать тестовые данные и загружать файлы, а выполнение произвольного JavaScript-кода в шагах недоступно. При этом в новой версии уже добавлены API-запросы (с переменными и валидациями) и шаги с запросами к базе данных, что закрывает часть интеграционных сценариев. Из-за отсутствия возможности генерации уникальных тестовых данных не все тесты можно запускать многократно, без дополнительной очистки данных на тестовом стенде.

С ограничением по возможности генерации уникальных тестовых данных мы столкнулись при создании автотестов на регистрацию новых пользователей и добавление уникальных записей в справочники. Ранее такие тесты мы могли запускать только один раз, ведь логин пользователя и уникальное имя объекта справочника приходилось «захардкодить», а при повторном запуске сценарий падал. Это ограничение нам удалось обойти через дополнительные шаги обращения к сторонним сервисам генерации данных, откуда мы копировали уникальные значения и вставляли в нужные нам поля. Теперь в BugBuster появились возможность отправлять API-запросы и сохранять полученные значения из ответа в динамические переменные, поэтому мы планируем переработать имеющиеся сценарии, требующие уникальных данных, и получать уникальные значения от внешних сервисов генерации данных через API.

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

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

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

Разработчики BugBuster активно дорабатывают свой продукт и быстро реагируют на выявляемые пользователями проблемы, поэтому исправление всех описанных выше моментов уже запланировано. Для описания элементов планируется добавить возможность выделять область интерфейса с автогенерацией корректного описания, для снижения дублирования шагов — внедрение Shared Steps, а для повышения стабильности выполнения шагов — обновлённые механизмы интерпретации формулировок.

Адаптация ручных сценариев

Если просто импортировать имеющиеся ручные сценарии в BugBuster, то получившиеся шаги автотеста могут отличаться от необходимого формата, а также автотесты могут получиться нестабильными из-за непредсказуемого времени загрузки некоторых страниц и элементов интерфейса. Чтобы адаптировать ручной сценарий вам потребуется потратить дополнительные ресурсы на изменение его формата, разделить шаги на действия и проверки и конкретизировать описание элементов интерфейса, чтобы AI-агент мог их идентифицировать. Адаптация сценария опытным пользователем платформы, хорошо разбирающимся в тестируемом продукте, занимает около двух минут на один исходный шаг тест-кейса, для специалиста, только начинающего использовать платформу, стоит закладывать около 4 минут на исходный шаг при работе над несколькими первыми автотестами. Приведем часть полученной нами статистики по адаптации готовых ручных сценариев под формат платформы.

Таблица 3. Адаптация ручных сценариев к формату BugBuster

Исполнитель

Количество шагов исходного сценария

Время на адаптацию сценария для BugBuster

Опытный пользователь BugBuster

9 шагов

25 мин

Опытный пользователь BugBuster

20 шагов

45 мин

Опытный пользователь BugBuster

7 шагов

40 мин

Опытный пользователь BugBuster

28 шагов

58 мин

Опытный пользователь BugBuster

38 шагов

35 мин

Опытный пользователь BugBuster

Среднее значение: 2 мин / шаг

Начинающий пользователь BugBuster

21 шаг

120 мин

Начинающий пользователь BugBuster

20 шагов

30 мин

Начинающий пользователь BugBuster

9 шагов

80 мин

Начинающий пользователь BugBuster

21 шаг

62 мин

Начинающий пользователь BugBuster

Среднее значение: 4 мин / шаг

Заключение

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

Таблица 4. Ускорение от внедрения AI-агента

Задача

Классический подход

С применением AI-агента

Ускорение

Тестирование требований

60 мин

30 мин

В 2 раза

Создание чек-листов

60 мин

20 мин

В 3 раза

Создание тест-кейсов

120 мин

60 мин

В 3 раза

Автоматизация тестов

90 мин

20 мин

В 4,5 раза

 Вам стоит задуматься о внедрении AI-инструментов в процессы тестирования если:

  • Команда QA перегружена рутинной работой в виде написания тест-кейсов и их ручных прогонов

  • У вас в команде нет выделенных специалистов по автоматизации тестирования

  • Вы хотите сократить время на проведение регресса и выпускать релизы чаще

  • Вы хотите снизить влияние человеческого фактора на процесс тестирования

  • Вы хотите в целом повысить качество своего продукта без расширения команды и увеличения издержек

Мы не утверждаем, что наш подход — это серебряная пуля для всех проектов. У каждого своя специфика. Но наш опыт доказывает: AI уже сегодня может кардинально изменить процесс тестирования, уменьшить рутину и повысить качество.

А что думаете вы? Готовы ли доверить ИИ создание тест-кейсов?

Если ваши боли совпадают с теми, что мы описали выше, давайте обсудим, как Agentum AI может помочь именно вашей команде. Напишите нам mail@itfbgroup.ru мы подберем удобное время и покажем, как интегрировать AI-тестировщика в ваши процессы.

Источник: habr.com

Каталог бесплатных опенсорс-решений, которые можно развернуть локально и забыть о подписках

галерея

Природный белок может защитить желудочно-кишечный тракт от инфекций.
dummy-img
Предоставляем биологам по всему миру инструменты для проектирования белков на основе искусственного интеллекта.
Новый квантовый инструментарий для оптимизации
Новый квантовый инструментарий для оптимизации
dummy-img
dummy-img
Объяснение масштабирования от обучающей к тестовой выборке: как оптимизировать общий вычислительный бюджет для ИИ при выполнении инференса.
Инженеры сделали модульных роботов из шаров и палок. Они могут объединяться в более крупных роботов
Image Not Found
Природный белок может защитить желудочно-кишечный тракт от инфекций.

Природный белок может защитить желудочно-кишечный тракт от инфекций.

Слева: Интелектин-2 стабилизирует слизистый слой на здоровых тканях. Справа: Белок нейтрализует бактерии в воспаленном желудочно-кишечном тракте. Предоставлено исследователями. Белки, называемые лектинами, встроенные в слизистые оболочки организма, связываются с сахарами, находящимися на поверхности клеток. Группа исследователей под руководством…

Апр 23, 2026
dummy-img

MetaboNet: Крупнейший общедоступный сводный набор данных по управлению диабетом 1 типа.

arXiv:2601.11505v2 Тип объявления: замена-перекрестное аннотация: Прогресс в разработке алгоритмов лечения диабета 1 типа (Д1) ограничен фрагментацией и отсутствием стандартизации существующих наборов данных для управления Д1. Существующие наборы данных существенно различаются по структуре и требуют много времени для…

Апр 23, 2026
Предоставляем биологам по всему миру инструменты для проектирования белков на основе искусственного интеллекта.

Предоставляем биологам по всему миру инструменты для проектирования белков на основе искусственного интеллекта.

Компания OpenProtein.AI, основанная Тристаном Беплером (PhD '20) и бывшим профессором Массачусетского технологического института Тимом Лу (PhD '07), предлагает исследователям модели с открытым исходным кодом и другие инструменты для белковой инженерии. OpenProtein.AI помогает биологам оставаться на переднем крае…

Апр 23, 2026
Новый квантовый инструментарий для оптимизации

Новый квантовый инструментарий для оптимизации

Новая теоретическая работа от Google Quantum AI показывает, что крупномасштабные квантовые компьютеры могут решать определенные задачи оптимизации, которые неразрешимы для обычных классических компьютеров. Быстрые ссылки Бумага Делиться Скопировать ссылку × От разработки более эффективных авиамаршрутов до организации…

Апр 23, 2026

Впишите свой почтовый адрес и мы будем присылать вам на почту самые свежие новости в числе самых первых