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

Test-Driven Development (TDD)

Test-Driven Development (TDD) — техника разработки, при которой работа над небольшим поведением начинается с автоматического теста. Классический цикл состоит из трёх шагов:

  1. Red: написать тест для ещё не реализованного поведения и убедиться, что он падает по ожидаемой причине.
  2. Green: добавить минимальный код, чтобы тест прошёл.
  3. Refactor: улучшить структуру кода, сохраняя тесты зелёными.

Короткий цикл повторяется для следующего поведения. Тест помогает уточнить ожидаемый результат, но сам по себе не доказывает отсутствие всех дефектов.

Попросите агента сначала сформулировать сценарии и тесты, но проверьте, что они отражают требования, а не предполагаемую реализацию. Убедитесь, что новый тест действительно падает до изменения кода; иначе он может быть не связан с нужным поведением. Затем поручите минимальную реализацию, запустите тесты и изучите итоговый diff.

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

TDD особенно полезен там, где поведение можно выразить конкретными примерами и проверять быстро. Для визуального качества, исследовательских прототипов и характеристик, зависящих от реальной инфраструктуры, тесты дополняют другими методами проверки. Не следует писать тесты только ради покрытия: важнее, чтобы они обнаруживали нежелательное изменение поведения.