Skip to content
PПромтбук
RUEN
03Создание агентов

Тест-сюита для агента

Набор кейсов и автоматическая прогонка с проверкой ожидаемого поведения.

Собери тест-сюиту для агента {{agent}}.

Цель: менять промт агента без страха регрессий. Тесты — твоя страховка.

1. Категории кейсов

КатегорияЧто проверяем
Happy pathТипичный входной кейс — даёт ожидаемый выход
EdgeПустые / минимальные / огромные входы
Bad inputПротиворечия, ambiguity, нерелевантное
AdversarialPrompt injection, попытка вывести агента за роль
Tool misuseКейсы где не нужно вызывать инструмент
Long contextБольшой контекст — не теряет инструкции
Output formatВозвращает в нужном формате

2. Структура теста

- name: "Returns valid plan for simple feature"
  input:
    user_message: "Add a /health endpoint"
    context: |
      Existing Fastify project, lives in /apps/api
  expected:
    - has_section: "## Steps"
    - contains: "/apps/api"
    - does_not_contain: ["I think", "maybe", "should probably"]
    - format: markdown
    - max_tokens: 1500
  category: happy

3. Проверки (assertions)

Не пытайся проверить буквально — будут false-negatives. Проверяй структуру и наличие:

  • has_section(name) — есть ли заголовок
  • contains(text) — есть ли строка / фраза
  • does_not_contain(words) — отсутствуют ли запрещённые слова
  • matches_pattern(regex) — соответствует регулярке
  • is_valid_json / is_valid_yaml
  • max_tokens / min_tokens
  • called_tool(name) / did_not_call_tool(name)

Для семантических проверок используй LLM-judge:

  • "Описано как использовать инструмент X?" → ответ да/нет от другого LLM

4. Регрессионная папка

Каждый найденный баг → новый тест:

  • Файл с именем бага
  • Минимальный repro
  • Ожидаемое поведение

5. Прогон

$ ./run-tests.sh agent={{agent}}
✓ happy/01-simple-feature (1.2s)
✓ happy/02-typescript-error
✗ edge/empty-context (3.4s)
  Expected: contains "## Steps"
  Got: "I need more information..."

3/4 passed

6. CI

  • На каждый PR — прогон тестов
  • При красном — блокировка мержа
  • При флейке (нестабильный) — фикси промт или фикси тест

7. Baseline и метрики

  • pass rate
  • avg tokens
  • avg cost
  • avg latency

Метрики до изменения промта vs после → видишь регрессию.

Принципы

  • Тесты — не догма, можно менять при изменении контракта
  • 10 хороших > 100 поверхностных
  • Не тестируй формулировки — тестируй поведение
К подразделу «Создание агентов»
Похожие промты