Мой наставник / руководитель разработки просит меня написать новый тестовый блок для вновь написанного потока управления
Как этот поток управления стал записываться, если только он не был необходим для прохождения неудачного теста? Согласно определению TDD , производственный код не будет создан, если сначала не существует провального теста, который требует написания этого кода. Таким образом, вы, должно быть, писали код, используя какую-то методику последнего теста, а не TDD.
Рекомендую прочитать статью Искусство гибкой разработки: разработка через тестирование . Вы можете практиковать TDD, используя это руководство .
Я думаю, что ваш наставник, использующий фразу «всякий раз, когда это имеет смысл», может быть вредным, особенно для людей, плохо знакомых с TDD, потому что он не может принять правильное решение об этом до тех пор, пока у него не будет многолетний опыт работы, после один достиг Ri-уровня . Однажды, когда Кент Бек решил не написать тест , он был соответствующим образом прокомментирован Роном Джеффрисом: «Я доверяю вам и еще трем людям принимать правильные короткие игровые решения. . "
Вы всегда должны сначала написать тест. Все, что может сломаться, требует испытания. Только вещи, которые никогда не сломаются из-за того, что кто-то изменяет код, не нуждаются в тестах. Например, декларативный код редко ломается: статический HTML-код макета на веб-странице обычно не стоит проверять автоматически (вы должны проверить его вручную, чтобы убедиться, что он выглядит правильно), но все динамическое стоит проверить.