Если тест не пройден, есть три варианта:
- Рабочий код не работает, и его необходимо исправить.
- Тест не пройден (или не соответствует последним изменениям в рабочем коде), и тест необходимо исправить.
- Поведение, указанное в тесте, больше не требуется, и тест можно удалить.
Перед написанием любого нового кода все тесты должны пройти. Если тесты не пройдены, вы должны исправить их немедленно или отменить изменения. В противном случае вы не можете быть уверены в том, что когда тесты не пройдены, было ли это из-за изменений, которые вы внесли минуту назад, или это просто ложная тревога.
Игнорирование неудачных тестов - путь к темной стороне. Если вы будете игнорировать их достаточно долго, тестовый костюм сгниет, так как еще больше тестов не пройдут, и он потеряет свою ценность, и вам нужно выбросить тесты. И тогда, когда вы больше не можете полагаться на набор тестов, вы не решитесь улучшить дизайн рабочего кода, а также рабочий код начнет гнить. Наконец, больше невозможно поддерживать рабочий код, и вам нужно будет также выбросить его и переписать.