ВведениеЗа последние несколько лет роль QA-инженера заметно изменилась. Мы всё меньше сосредотачиваемся на проверке готового функционала и всё больше участвуем ВведениеЗа последние несколько лет роль QA-инженера заметно изменилась. Мы всё меньше сосредотачиваемся на проверке готового функционала и всё больше участвуем

Эпопея в трёх частях: ИИ-инструменты в работе QA. Практическое применение Cursor, n8n и LLM

2026/02/25 18:55
7м. чтение

Введение

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

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

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

Битва за качество

Чтобы понять, в каком состоянии сегодня находится типичный отдел тестирования, достаточно вспомнить одну эпичную сцену из Marvel.

Разберёмся, как эти инструменты реально помогают команде.

Часть 1. Cursor — когда требований нет, но надо тестировать

Классический сценарий из практики. Из Mattermost прилетает тикет от ТП: «В CRM-виджете отправки письма в поле „Кому“ (селект с выпадающим списком) путаются роли преподавателей: основной и замещающий. Менеджеры не понимают, кому именно уйдёт письмо».

ad32960c5309bb431f12bc840aaa3214.png

Проблема: чтобы воспроизвести и понять, баг это или фича, нужно разобраться, как работает логика. Документации нет, или она устарела. Остаётся:

  • исследовательское тестирование (долго и не факт, что найдёшь);

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

Как я работаю с Cursor

Вы наверняка знаете, но я напомню: Cursor это форк VS Code с ИИ на уровне ядра. Ключевая фишка — RAG по всему репозиторию. Cursor индексирует проект и понимает связи между сервисами.

Как он можем помочь с анализом бага в CRM-виджете:

Шаг 1. Открываем консоль браузера → Inspect Element на проблемном селекте → копируем HTML.

Шаг 2. Открываем репозиторий фронтенда приложения → вставляем в Cursor точный запрос:

«На странице в поле отправки письма находится селект с выбором «Кому». Там есть Преподаватель и Временный преподаватель. Можешь показать, откуда тянутся данные и как фронт определяет, выводить „преподаватель“ или „временный преподаватель“?»

Прикрепил HTML-селект.

fb8096a88c90eec651758b06ecbea23a.png

Ответ Cursor:

Данные → компонент mail-compose-message → метод optionsService

Логика фронта:

teacherId = основной преподаватель

mainId + replacedId = оба преподавателя

Проблема: фронт проверяет наличие teacherId, игнорируя поле type: primary/temporary из API

{ "teachers": [ { "id": "...", "teacherId": "...", "replacedTeacherId": "...", "type": "temporary", "createdAt": "2025-06-01T14:33:13+00:00", "updatedAt": "2025-06-01T14:33:13+00:00" }, { "id": "...", "teacherId": "...", "replacedTeacherId": null, "type": "primary", "createdAt": "2025-04-02T14:05:23+00:00", "updatedAt": "2025-04-02T14:05:23+00:00" } ] }e03a4ee8dbabf343a047957ed1cf4f08.png260a86060f983c2034bf6fab4b0b267c.png

Результат для QA

Cursor даёт больше информации о том, как работает сейчас функциональность тем самым повышает вашу экспертизу. У вас больше контекста для того, чтобы воспроизвести проблему и более точно описать баг-репорт.

Что даёт на деле:

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

  • Можете сами создать актуальную документацию или обновить старую.

  • Идёте к разработчику не с вопросом «Почему сломалось?», а с конкретной гипотезой по коду.

  • Воспроизводите баги в тестовой среде — знаете точные данные и сценарии.

Реальный результат: QA сам разбирается в архитектуре и может документировать фичу.

А при хороших технических навыках можно даже принести баг с уже готовым техническим решением:

QA принёс на груминге тех. решение:

Часть 2. n8n — автоматизация рутинных задач

Если с Cursor мы разбираем код и понимаем, как всё работает, то в n8n мы помогаем себе с рутиной. Это low-code-платформа для автоматизации воркфлоу, которую можно развернуть внутри своего контура (self-hosted).

Тестировщик, как правило, взаимодействует с разными сервисами:

  • задачи в Jira,

  • корпоративные мессенджеры,

  • GitLab,

  • TMS cистемы и т.д.

n8n — low-code платформа, которая умеет работать с сервисами по API (на текущий момент доступно более 400 официальных интеграций).

С его помощью можно:

  1. Строить надежные автоматизации на базе классических алгоритмов (HTTP-запросы, вебхуки, Cron).

  2. Создавать автономных ИИ-агентов для интеллектуальной обработки данных между системами.

Кейс 1. BugMan — агент Скотт Лэнг

772e5a25473deeea20617a0996f1e339.png

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

Решение: n8n-агент с инструментами для взаимодействия с сервисами.

  • Готовая Mattermost-нода — сразу тянет треды по API.

  • HTTP-нода — кастомные запросы к любым сервисам.

  • Мой подход: отдельный workflow для получения тредов (модульность + переиспользование), который агент вызывает как tool.

c850672aeedfb4f7b2ec8797c9e3a770.png

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

  1. Агент получает от пользователя ссылку на тред → tool get_info_thread_mattermost.

  2. Парсит все признаки баг-репорта: шаги воспроизведения, expected/actual, логи, скрины, id проблемных юзеров. Здесь очень важно корректно описать промпт агенту.

  3. LLM заворачивает баг-репорт в Jira Wiki Markup.

  4. Создаёт в нужном проекте задачу с типом Bug.

899681b658430b0f7db43fa73cae27d1.png

Кейс 2. QA-tab — агент Стив Роджерс

dfd414be058e2c60d65aa9ea110ae44c.png

Стандартный процесс: разработчик завершает задачу → двигает её в Ready for Test → QA начинает тестирование.

Проблема: описание в задаче может быть неточным или недостаточным, QA не понимает весь объём изменений и рисков.

Решение: агент Стив Роджерс автоматически готовит промпт для Cursor. Мы всё так же создаём агента в n8n, прописываем ему промпт и доступ к нужным tools:

  1. Jira-задача → анализ требований.

  2. GitLab MR → анализ изменений git diff.

  3. Формирует структурированный промпт:

    1. Требования из Jira: [текст задачи].

    2. В этой MR изменены файлы X, Y, Z [git diff].

Сам воркфлоу в n8n агента для формирования промпта из контекста сервисов:

b221278c350f0850297da8ba61616183.png

1. Мы отправляем агенту в чат ключ задачи Jira и получаем промпт для Cursor с готовым контекстом:

b06657ff06c40b11d46535daf8ab58dc.png

2. Проверяем промпт и копируем его.:

faf838befa93006a269b96e6ca51c3c3.png

3. Вставляем промпт в Cursor и получаем суть изменений бизнес-логики.

f13e8a3ffe707e4084b8ea7b8e1a6ff8.pngaa66ef53a87972d96e43626b03b979bb.png

Результат: QA понимает, что именно изменилось в бизнес-логике, и создаёт чек-листы и тест-кейсы отдельными промптами с учётом специфики проекта.

Часть 3. Open WebUI

Для работы с агентами n8n и другими LLM (облачными или локальными) нужен удобный интерфейс. Встроенный чат n8n подходит для простых случаев, но для масштабирования на отделы требуется система с администрированием.

Решение: Open WebUI — self-hosted-интерфейс с поддержкой любых моделей.

Преимущества:

  • подключение локальных и облачных LLM;

  • удобное администрирование пользователей и моделей;

  • вебхуки для интеграции с n8n;

  • community-решения для сложных интеграций.

Интеграция: n8n ↔ Open WebUI через вебхуки и кастомные скрипты.

Результат: единый интерфейс для всех агентов с централизованным управлением.

Логика настройки:

В n8n: создаем workflow, начинающийся с ноды Webhook (метод POST):

14dbea51db85a4568f7bf19a6b113fb4.png

Обработка: внутри воркфлоу настраиваем цепочку действий (например, вызов LLM-агента):

72b466822a8d6ef741281661fd1c2ab5.png

Ответ: в конце обязательно ставим ноду Respond to Webhook:

bc92aaaeb4d7a23a11d8f67bd1bae1a1.png

Интеграция реализуется через кастомный скрипт на стороне Open WebUI, который пробрасывает запросы в вебхуки n8n. За основу взято решение из Community Open WebUI:

40ce98944a4d59806636b154e8986c95.png

Найди данный скрипт можно по адресу: https://openwebui.com/search

e93b47cc75a570439942a4cc6761cf2d.png

В Open WebUI: прописываем URL нашего вебхука в настройках функции:

0bc4db2d6bd82d97891cf44c3d742b68.png

Инструментарий — не догма: выбирайте то, что решает ваши боли

В n8n можно собирать агентов под свои задачи или использовать другие инструменты автоматизации.Сейчас QA чаще всего используют ИИ для решения задач:

  • сбор и анализ требований;

  • создания тест-кейсов и чек-листов;

  • написания автотестов.

Я фокусируюсь на том, что отнимает больше всего времени, и шарю наработки с коллегами. Не обязательно использовать только инструменты, о которых я рассказал в статье — можно и своё что-то собрать.

Недавно я создал мини-рекордер: он записывает все действия в браузере (API-запросы, локаторы, URL) и формирует промпт для Cursor. Тот смотрит на код фронтенда и бэкенда проектов и генерит точный тест-кейс.

2fc50510fb61a9c1b6e03c48f576c30d.png

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

Галлюцинации и проверка

ИИ не замена QA-инженера, а что-то вроде стажёра. Он может уверенно придумать несуществующий эндпоинт или параметр.

Best practice №1. Никогда не копируйте результат ИИ бездумно. Всегда проверяйте, что он возвращает.

Prompt Engineering

Успех почти полностью зависит от системного промпта. Не пишите «сделай чек-лист». Пишите по структуре:

  • Role. Кто он?

  • Context. Что мы тестируем?

  • Instruction. Что сделать?

  • Output. В каком виде?

  • Rules. Чего делать нельзя?

Очень хорошо описывают как работать с галлюцинациями Anthropic: https://platform.claude.com/docs/en/test-and-evaluate/strengthen-guardrails/reduce-hallucinations

Заключение

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

  • n8n даёт хороший старт в автоматизации: то, что раньше съедало часы, теперь занимает 10 минут. Вы можете самостоятельно выстраивать воркфлоу для взаимодействия с нужными системами.

  • Open WebUI даёт удобный интерфейс для взаимодействия с LLM.

Главное: ИИ не заменяет QA — он делает работу эффективнее. Если вы знаете архитектуру, умеете в тест-дизайн и понимаете бизнес-логику, эти инструменты только принесут вам пользу. Без экспертизы это просто дорогой калькулятор.

Источник

Отказ от ответственности: Статьи, размещенные на этом веб-сайте, взяты из общедоступных источников и предоставляются исключительно в информационных целях. Они не обязательно отражают точку зрения MEXC. Все права принадлежат первоисточникам. Если вы считаете, что какой-либо контент нарушает права третьих лиц, пожалуйста, обратитесь по адресу [email protected] для его удаления. MEXC не дает никаких гарантий в отношении точности, полноты или своевременности контента и не несет ответственности за любые действия, предпринятые на основе предоставленной информации. Контент не является финансовой, юридической или иной профессиональной консультацией и не должен рассматриваться как рекомендация или одобрение со стороны MEXC.