| Cursor AI для ревью ручных тест-кейсов в TestOps |
| 23.03.2026 00:00 |
|
Автор: Олег Малышев, телеграмм-канал автора про QA,QA Auto, AI, Вайбкодинг Всем привет! Я один из лидеров стека тестирования в компании «ТехВилл» (в простонародье — Head QA). Моя цель простая: снимать рутину с QA-инженеров с помощью AI-инструментов. В идеальном мире мы «скармливаем» модели, требования, ссылки на Figma, ветки в Git и прочие артефакты через MCP, а она помогает: 1) писать тест-кейсы по контексту, 2) а затем — генерировать автотесты на базе этих кейсов. Про генерацию тест-кейсов из Swagger и автотестов на API по тест-кейсам через Cursor (на реальном проекте) я уже записывал большой гайд про «вайбкодинг/вайбтестинг». В этом гайде я в том числе показал свой подход вайбкодинга через вспомогательные файлы типа Решили начать с ИИ-ревью тест-кейсов Написание качественных тест-кейсов по ТЗ и всем материалам — задача реально непростая. Поэтому мы решили начать с малого: сделать AI-ревьюера тест-кейсов. Идея такая:
Чтобы это работало технически, нам нужно уметь:
Под это мы и сделали своё MCP для TestOps и интерфейс для настройки промптов под определенные проекты в TestOps. Выглядит он примерно так:
Почему не используем MCP TestOpsВ TestOps недавно появился собственный MCP и встроенный AI-чат — прямо внутри системы. Для AI-чата, правда, нужна отдельная лицензия. Мы узнали об этом уже после того, как разработали свой MCP. Мы также посмотрели на возможности встроенного AI-чата от TestOps и пришли к выводу: наше решение по возможностям нам нравится как минимум не меньше. При этом оно остаётся нас бесплатным (в рамках текущей инфраструктуры и наших лицензий). Как работает наш MCPНаш MCP написан на Python и использует фреймворк FastMCP: https://moge.ai/ru/product/fastmcp2 Также мы трансформировали предоставляемую OpenAPI-спецификацию Allure TestOps в API-клиента. Дальше флоу следующий:
Причём тут CursorНа момент, когда мы начали, у нас было несколько практичных ограничений:
Поэтому я решил сделать минимальный прототип: маленький проект в Cursor с правилами и одной командой, чтобы любой QA мог:
Как устроен мини-проект в CursorВнутри по сути минимум:
User RuleНиже — правило пользователя, которое решает боль Cursor: он не всегда стабильно читает project rules. Я принудительно заставляю его перед каждым ответом прочитать правила проекта, а фраза «В контекст добавлены правила…» служит маркером, что правила реально применились. “Отвечай на русском языке. Перед каждым ответом обязательно читай правила проекта из .cursor/rules. Не приступай к ответу, пока не прочтёшь правила. Каждый свой ответ без исключений начинай с фразы «В контекст добавлены правила: X, Y, Z, etc.» с названиями прочтённых файлов с правилами.” Промпт ревью тест-кейса (project rule)Сразу оговорюсь: это скорее тестовый промпт, чтобы быстро получить первые результаты и понять, куда копать дальше. Ты — Senior QA Engineer (30+ лет опыта) по тестированию Mobile/Web/API. Ты проводишь ревью тест‑кейсов в Allure TestOps и помогаешь QA писать кейсы так, чтобы они были: однозначными, проверяемыми, атомарными, воспроизводимыми, детерминированными и пригодными к автоматизации. Я буду присылать тебе скриншоты/текст тест‑кейса из Allure TestOps (иногда только часть полей). Твоя задача: быстро и строго отревьюить кейс по регламенту ниже и предложить конкретные правки. === РЕГЛАМЕНТ (кратко) ===
=== ФОРМАТ ОТВЕТА (строго) === A) Короткая оценка (2 блока)
B) Правки «было → стало» (коротко и прикладно) Для каждого изменения придерживайся структуры:
Правки давай по главным зонам:
Важно:
=== ВХОДНЫЕ ДАННЫЕ === Я присылаю:
Начинай ответ сразу с пункта A), потом B). Команда /review-test-caseЧтобы QA мог прогнать ревью «одной кнопкой», я добавил command # review-test-case Сделай ревью тест-кейса в Allure TestOps и опубликуй результат НОВЫМ комментарием в этот тест-кейс через MCP TestOps. Важно: всегда создавай новый комментарий (create), никогда не обновляй существующие (update) и не удаляй комментарии. Входной параметр: Приоритет данных: 1. Получи данные через MCP ( 2. Если в ответе API какие-то поля пустые (например, 3. Не пиши «Нет сценария» или «Пустое поле», если текст виден на изображении. Примеры: - Требования к ответу (строго): - Начинай с пункта A), затем B) по регламенту проекта. - В A) два блока: ✅ Что хорошо (3–6), ❌ Что плохо/риски (3–8). - В B) “было → стало” для ключевых зон: Title, Preconditions, Shared steps (если нужно), Scenario (шаги + ER на каждый шаг), Artifacts/Tags/Links (если нужно). Зачем второй MCP: sequential-thinkingУ меня подключено два MCP:
Я решил, что для ревью sequential-thinking будет полезна не хуже, чем для кода: модель проходит по цепочке preconditions → шаги → expected result → тест-данные → детерминизм/автоматизируемость, и на каждом этапе быстрее всплывают типовые дыры: размытые ER, пропущенные данные, смешение нескольких проверок в одном кейсе и т. д. Как это выглядит в работеФлоу максимально простой:
2. Вызываем команду
3. Через несколько секунд получаем результат ревью комментарием в TestOps.
По-моему неплохо! Если вам понравилась статья дайте знать и мы выложим продолжение. |