Я пытаюсь изучить концепции TDD и модульного тестирования, и я видел мантру: "красный, зеленый, рефактор". Мне интересно, почему вы должны реорганизовать свой код после прохождения тестов?
Это не имеет никакого смысла для меня, потому что если тесты проходят, то почему вы возитесь с кодом? Я также вижу, что TDD-мантры типа "достаточно писать достаточно кода, чтобы пройти тест".
Единственная причина, по которой я мог придумать, - это сделать, чтобы пройти тест с зеленым, вы просто небрежно пишете какой-либо старый код. Вы просто взламываете решение, чтобы пройти тест. Тогда, очевидно, код беспорядок, поэтому вы можете его очистить.
EDIT:
Я нашел эту ссылку в другой записи stackoverflow, которая, я думаю, подтверждает единственную причину, по которой я пришел, что исходный код для прохождения теста может быть очень простым, даже жестко запрограммированным: http://blog.extracheese.org/2009/11/how_i_started_tdd.html