[hate] О постоянно сломанном коде и тестах
Я нашел контекст, в котором тесты очень полезны. Я как-то раньше пропускал его мимо глаз. Мне очень везло раньше этого не видеть.
Пожалуй, я теперь понимаю, почему сообщество так ценит идею тестов.
Ситуация
Вы написали фичу. И внезапно оказывается, что на протяжении пары месяцев какие-то пидарасы постоянно её ломают. И что удивительно — практически её не трогая.
Очевидно, здесь очень сильно напрашиваются тесты. Но! Поставьте себя на место этого пучеглазого мудилы, который не удосужился проверить свои ченджи. Будете ли вы раннить тесты?
Решение
Ок, зайдем с другой стороны. Давайте увольнять далбаебов, которые ломают уже работающий код.
Но как это трекать? Ответ: тесты!
Но теперь тесты обретают смысл, у них появляется высшая цель. Они помогают скинуть бесполезный и вредный балласт.
Альтернативное решение
Люди с ограниченным умственным развитием скорее всего настроят CI. Оно будет автоматически уведомлять о любых поломках.
И… продолжат работать с далбаебами.
Такой способ — очень проблемный. Он не лечит проблему, а только уменьшает последствия малых проблем.
Вы встречались с ситуацией, когда разработчики комментят или удаляют неработающие тесты?
Примечание: есть еще одна категория людей, которые настроят CI: люди с ограниченной хваткой.
Отказ от всех доебок
Автор не ручается, что его обязательно поймут правильно. Навскидку, если вы настроили CI не для решения описанной ситуации, то статья не имеет к вам никакого отношения.