Что такое tdd?
Используйте при реализации сложной логики, требующей тестового покрытия: сначала напишите тест, наблюдайте за его провалом, напишите минимальный код для прохождения; гарантирует, что тесты действительно проверяют поведение, требуя сначала сбоя; НЕ для компонентов пользовательского интерфейса, простого CRUD или простого кода. Источник: udecode/dotai.