Перейти к содержимому

Test Generation

Workflow для генерации кода автотестов включая unit, integration и e2e тесты. Анализирует существующие паттерны проекта и генерирует тесты по установленным conventions.

Окно терминала
mcp__moira__start({ workflowId: "test-generation" })
flowchart LR
    A[Код] --> B[Анализ проекта]
    B --> C[Выбор подхода]
    C --> D[Анализ структуры]
    D --> E[Выбор типа]
    E --> F[Генерация кейсов]
    F --> G[План]
    G --> H[Генерация тестов]
    H --> I[Ревью]
    I --> J[Сохранение]
ШагДействиеРезультат
1. КодПолучение кода для тестированияЦелевой код
2. Анализ проектаИзучение существующих тестов и паттерновАнализ проекта
3. Выбор подходаИспользовать существующие паттерны или создать новыеРешение по подходу
4. Анализ структурыОпределение testable units (функции, классы, методы)Инвентарь units
5. Выбор типаВыбор unit, integration или e2eТип тестов
6. Генерация кейсовГенерация тест-кейсов (happy path, edge, error)Список кейсов
7. ПланФинальный план тестированияСогласованный план
8. ГенерацияГенерация кода тестовФайлы тестов
9. РевьюРевью пользователемОдобренные тесты
10. СохранениеСохранение тестов в проектСохранённые тесты
ЭлементДетекция
Директории тестовtests/, __tests__/, spec/
ФреймворкиJest, Playwright, pytest, Vitest
ConventionsПаттерны именования, использование helpers
ТипОписание
unitИзолированное тестирование функций/методов
integrationТестирование взаимодействия компонентов
e2eТестирование полных user flows
КатегорияФокус
Happy pathНормальное ожидаемое поведение
Edge casesГраничные условия, лимиты
Error casesНевалидный input, обработка ошибок
  • Анализ проекта: Проверка полноты понимания
  • Анализ структуры: Подтверждение определённых testable units
  • Покрытие кейсов: Обеспечение адекватного покрытия
  • Валидация синтаксиса: Проверка валидности сгенерированного кода
  • Подтверждение подхода: Согласование стратегии тестирования
  • Подтверждение типа: Одобрение выбора типа тестов
  • Подтверждение плана: Одобрение финального плана
  • Ревью: Одобрение сгенерированных тестов
{
"id": "generate-tests",
"type": "agent-directive",
"directive": "Сгенерируй код тестов по утверждённому плану. Используй conventions проекта для именования, структуры и helpers.",
"completionCondition": "Файлы тестов сгенерированы с валидным синтаксисом, покрывающие все запланированные тест-кейсы",
"connections": {
"next": "review-tests"
}
}