Я часто нахожу себя пишущим тесты, TDD, для случаев, когда я не ожидаю, что нормальный поток программ вызовет. Подход «фальсифицируй, пока сделаешь» заставляет меня начинать с нуля, как правило, достаточно, чтобы иметь представление о том, как должен выглядеть вызов функции, какие типы будут иметь ее параметры и какой тип она будет иметь. вернуть. Чтобы было ясно, я не просто отправлю null в функцию в моем тесте; Я инициализирую типизированную переменную для хранения нулевого значения; таким образом, когда Eclipse Quick Fix создает функцию для меня, она уже имеет правильный тип. Но нередко я не ожидаю, что программа, как правило, отправит нуль в функцию. Так что, возможно, я пишу тест, который я AGN. Но если я начну со значений, иногда это слишком большой кусок. Я одновременно разрабатываю API и продвигаю его реальную реализацию с самого начала. Итак, начиная медленно и притворяясь, пока я делаю это, иногда я пишу тесты для случаев, которые я не ожидаю увидеть в рабочем коде.