Несколько лет спустя я провел гораздо больше юнит-тестов и чувствую, что понимаю это лучше.Модульные тесты хороши при проверке правильности фрагмента кода, ПРИЗНАВАЯ, что вы правильно понимаете, как использовать фальшивые API-интерфейсы (поддельные / заглушки).Но чтобы правильно подделать эти API, вы должны сначала понять, как они работают.Поэтому после прочтения документации по этим API вы можете проверить свое понимание, выполнив проверку концепции - даже если это означает тестирование кода вручную после его написания - или написав интеграционный тест.Если вы не совсем хорошо разбираетесь в API сторонних разработчиков, вы можете подделать его в модульном тесте и снова следовать TDD.
Оболочки для сторонних API - отличная вещь для написания интеграционных тестовдля, где вы просто тестируете свою минимальную оболочку без фальсификации стороннего API, чтобы убедиться, что вы правильно ее понимаете.Некоторые из этих тестов могут быть не тестами, а демонстрациями, написанными как тесты.Позже они также пригодятся, потому что вы можете просмотреть их, если забудете, как что-то работает, помочь коллеге понять API и обнаружить небольшие изменения при обновлении API.
Сегодня я часто пишу интеграциютесты обёрток, написание демонстраций / примеров использования сторонних API-сценариев, имеющих отношение к моей ситуации, и даже написание производственного кода и его ручное тестирование, если потребуется.Мне нужно только тогда, когда есть неопределенность или неясность в API, который я использую.Как только я почувствую уверенность в том, как его использовать, пришло время для «обычного» TDD.