Думаю вы согласитесь, что когда что-то ломается мы сильно стрессуем (прям песец). Или когда доказываешь, что проблема не в твоем коде, со стековерфлоу, а ты вообще не виноватый.
А уж какие могут разгореться баталии с коллегами на пару часов. После которых хорошо прокачаешь свою практику аргументации, хитрость и изворотливость.
А ведь будь у нас волшебная кнопка, указующая в чем дело и кто виноват, всего этого можно было бы и избежать. Хотя последний навык, довольно полезный.
И такая есть! И имя ей: “Запустить юнит-тесты”!
Несмотря на то, что кнопка эта очень спасительная, добавить ее в свою жизнь почему-то тяжело. Всем своим нутром ей сопротивляешься. А еще нужно написать то, что нужно запустить. И самая частая отмазка при этом: нет времени, нужно сделать срочно!
Хотя подсознательно ты знаешь, что в этом варианте событий, время сэкономленное на тестах (когда их нет), с лихвой и многократно поглотится дальнейшей поддержкой и доработкой. Особенно, если был перерыв в работе над этим проектом.
Еще один камень преткновения, это UI-тесты. Никто не любит их писать, никто, особенно я. ЮАй часто меняется, для его теста нужно накинуть еще пару дополнительных библиотек и так далее. Но эту горькую пилюлю надо проглотить. Ибо боль временна, а триумф вечен!
Если процент покрытия достигнет, хотя бы 30%, это вызовет невероятный приступ эйфории. Каждый раз когда вы увидите зеленую полоску, эндорфины будут вас атаковать. От нападок коллег вы будете отстреливаться, как из пулемета. А качество кода вырастит в разы ибо тесто-пригодный код не может быть спагетти-кодом, тесто то у них разное!
Хорошая новость еще и в том, что качество вашей работы вырастет уже при 10%-м покрытии. А за это еще может быть даже премию дадут к получке (нет, скорее еще работы накинут).
PS: cам я тоже частенько грешу отсутствием тестов, но надеюсь этот сумбурный текст поможет мне чаще проглатывать эту пилюлю и отстреливаться )