TDD задає Claude чіткий порядок

AI-assisted test generation без контролю може породити слабкі assertions, надмірні mocks або тест, який проходить ще до виправлення. TDD обмежує цей ризик послідовністю: очікувана поведінка, червоний тест, мінімальний fix, зелений тест і лише потім мале прибирання.

  1. Сформулюйте спостережувану поведінку.
  2. Напишіть тест, який не проходить на поточному коді.
  3. Переконайтеся, що причина падіння — саме відсутня поведінка, а не fixture або import.
  4. Внесіть найменшу зміну в production-код.
  5. Запустіть тест і перевірте green result.
  6. За потреби виконайте невеликий refactor без зміни поведінки.

Червоний тест має бути чесним

Надійний тест перевіряє результат, який бачить користувач або інша система: поле помилки, значення, блокування дії або HTTP-відповідь. Тест, що лише перевіряє «щось повернулося», може залишатися зеленим при наявному дефекті.

До змін переконайтеся, що тест не має проблем із фікстурами, mock-ами чи імпортами та справді відрізняє стару реалізацію від очікуваної.

Запит на окремий червоний тест
Прочитай специфікацію та validator.
Додай лише тест для потрібної поведінки.
Production-код не змінюй.
Поясни, чому тест зараз не проходить.

Зелений етап і межі refactor

  • Попросіть Claude зробити мінімальний fix у межах одного ризику.
  • Не дозволяйте переносити файли, додавати helper-и або залежності без рішення.
  • Після green допустиме мале прибирання назв чи локального дублювання.
  • Великий cleanup винесіть в окрему задачу.
  • Зелений статус не скасовує перевірку diff.

Як виявити слабкий AI-тест

СигналЧому це проблема
Тест проходить до fixВін не доводить наявність початкового дефекту
Перевіряється лише виклик mockНе доведено користувацький або системний результат
Замокано обʼєкт перевіркиТестуємо підміну, а не реальну поведінку
Великий snapshotУ шумі важко побачити важливий контракт
Нечітка назваНезрозуміло, який ризик захищено

Безпечний prompt для ревʼю тесту

У CLAUDE.md можна закріпити повторювані правила: спочатку regression test, до нього не чіпати production-код, після green не робити великий cleanup і звітувати про фактичні перевірки.

Read-only test review
Перевір тільки тест.
Визнач, чи він описує поведінку користувача,
чи може пройти при наявному дефекті,
і чи не залежить надмірно від mock-ів.
Файли не змінюй.

Канонічне джерело уроку · JavaRush

Відкрити матеріал JavaRush