Идея без жаргона
TDD — короткий цикл обратной связи:
- Red — напиши один падающий тест на следующее поведение.
- Green — минимальная реализация, чтобы тест прошёл.
- Refactor — улучши дизайн, не ломая suite.
Что даёт и чего не даёт
Плюсы: яснее API, меньше «случайно сломали».
Минусы: не гарантирует правильные требования и качественные тесты.
Лучше всего работает там, где поведение специфицируется быстро. Exploratory UI, интеграция, перформанс и ops-риски требуют других техник рядом с TDD.
Мини-пример цикла
it("складывает числа", () => {
expect(add(2, 3)).toBe(5);
});
export function add(a, b) {
return a + b;
}
Итог: TDD — дисциплина маленьких шагов red→green→refactor, а не религия и не замена продуктовой ясности.