Хотя я не могу сказать вам, что будет работать, я могу сказать вам кое-что, что определенно не будет работать, и его следует избегать:
Я напишу код, ты пишешь тест
Сначала это всегда возникает. Люди предполагают, что, поскольку вы так любите тестирование, именно вы должны писать тесты. Это совсем не работает и упускает из виду весь смысл.
Вы написали тест, который не работает, поэтому вы должны исправить его.
Если вы начнете писать тесты для своего кода, неизбежно кто-то другой нарушит эти тесты. Затем, если вы попросите их исправить это, они часто скажут, что это ваша ответственность. Это не обязательно то, что они придурки, возможно, они просто не понимают процесс. Здесь вам понадобится резервное копирование для управления.
Я просто начну, и все будут следовать.
Как уже говорили другие, TDD без поддержки управления очень сложен. Если есть разработчики, которые не «пьют Cool-Aid», они будут постоянно сдавать ваши тесты и не заботиться о них. Если вы не можете заставить их поверить, тогда вам нужно, чтобы руководство сообщило им, что это их работа.
Что наконец-то привело меня в чувство, так это наблюдение за крахом проекта из-за слишком большого количества ошибок. Это убедило меня, что я делаю что-то в корне неправильно. Небольшое исследование привело меня к автоматизированному тестированию, и с небольшой решимостью я изучил основы. Возможно, разговор с вашими коллегами-разработчиками о похожих проектах (у всех нас есть хотя бы один ...) поможет им понять, что они могут попробовать что-то новое.