Я прочитал одну книгу («TDD by example» Кента Бека), которая действительно, кажется, принимает этот подход «методом проб и ошибок» до крайности: но это больше похоже на «заставить модульные тесты работать». Тем не менее, я не мог заставить себя закончить эту книгу - редкий случай, тем более, что я действительно надеялся получить лучшее понимание. Тем не менее, принятие явно глупого кода, которое будет улучшено позже, заставляет меня дрожать.
Наука: Автоматизированные тесты имеют свои преимущества. Тем не менее, они не серебряная пуля, как они утверждают. Ни один метод испытаний не является достаточным для обнаружения дефектов, а другие методы имеют лучшую скорость обнаружения.
Чувство интуиции: Наши проблемы - это аспекты все возрастающей сложности. Сложность тесно связана с количеством кода, которым мы должны управлять. В этом свете TDD пытается решить проблемы с большим количеством кода , написав еще больше кода .
Преимущества: Теперь у нас есть устоявшийся формализм, позволяющий сделать тестирование повторяемым, подотчетным и незамедлительно документированным. Это определенно выход из «работы на моей машине» и «странно, вчера сработало, я дам тебе последнюю DLL».