LINUX.ORG.RU

История изменений

Исправление Chiffchaff, (текущая версия) :

Я работал и работаю в компаниях, где проектам по 15-30 лет (да, на поза-поза-прошлой работе реально был проект, написанный на гибриде C++ с Python, которому 30 лет). Где каждая минута простоя может приносить ощутимые убытки.

И также в части этих проектов было хорошее покрытие тестами, а в части не было вообще никакого или было плохое.

Потому по собственному опыту могу сказать, что с тестами намного лучше.

В легаси проекте из сотен тысяч, даже миллионов строк, невозможно одному человеку разобраться до конца. И всегда понимать, как повлияет любое изменение. И протестировать вручную все части приложения после каждого изменения невозможно хотя бы потому что это займёт нереальное время. А быть уверенным, что правка в модуле X не затронет Y и Z - невозможно. Со временем, любой проект превращается в тесно связанную лапшу. Любое изменение может не изменить ничего, а может изменить поведение каких-то других частей совершенно неожиданным образом.

И вот когда покрытие тестами близко к 100%, комфорт от работы намного выше, потому что уже знаешь из опыта, что если тесты прошли успешно, то после выкатки на прод проблем скорее всего не будет.

Исходная версия Chiffchaff, :

Я работал и работаю в компаниях, где проектам по 15-30 лет (да, на поза-поза-прошлой работе реально был проект, написанный на гибриде C++ с Python, которому 30 лет). Где каждая минута простоя может приносить ощутимые убытки.

И также в части этих проектов было хорошее покрытие тестами, а в части не было вообще никакого или было плохое.

Потому по собственному опыту могу сказать, что с тестами намного лучше.

В легаси проекте из сотен тысяч, даже миллионов строк, невозможно одному человеку разобраться до конца. И всегда понимать, как повлияет любое изменение. И протестировать вручную все части приложения после каждого изменения нереально хотя бы потому что это займёт нереальное время. А быть уверенным, что правка в модуле X не затронет Y и Z - невозможно. Со временем любой проект превращается в тесно связанную лапшу. Любое изменение может не изменить ничего, а может изменить поведение каких-то других частей совершенно неожиданным образом.

И вот когда покрытие тестами близко к 100%, комфорт от работы намного выше, потому что уже знаешь из опыта, что если тесты прошли успешно, то после выкатки на прод проблем скорее всего не будет.