Нужно ли вообще тестирование ?



Касаемо тестирование у меня достаточно скептическое отношение, потому что зачастую тесты пишутся ради тестов и местами они просто сжирают время и бюджет заказчика. Нужно понимать что тесты это не панацея и они не спасут от проблем в дальнейшем, местами они могут даже их подкинуть, если вы захотите изменить какой-то существующий компонент вашего приложения.



Поэтому тесты нужно использовать тогда когда вы пишите какую-то большую и сложну логику, которую тестировщику просмотреть составит время. Тесты это упрощение жизни не только себе, но и команде в том числе.



Какой процент покрытия тестами лучше всего ? На самом деле как показывает практика без разницы какой процент, если он затрагивает те аспекты которые могут поломаться в процессе разработки проекта и чтобы каждый раз не напрягать тестировщика вы увидете и исправите сразу все проблемы. Допустим система промокодов, оплат, подписок. Но тесты не должны писаться ради проверки инпутов, открытия попапов простых и тд.



Тесты есть трех видов:

e2e
- самые приближенные к человеческому поведению, но ограничены тем что не могут как раз протестировать внутри как будут обстоять дела после тех или иных изменений

unit - когда атамарные части или области кода тестируются внезависомости от других составных частей

интеграционные - тесты которые смотрят на то как все компоненты/функции будут жить вместе



Есть даже пирамида тестирования, которая как раз и говорит о том каких тестов в каком количество нужно

Обычно лично я использую тесты на больших проектов, так как там как раз есть логика ( достаточно сложная ) , которую проверить тестировщику составит время. На маленьких проектов можно и без них на самом деле ( тут большое но какая логика там будет, если сложная то можно и рассмотреть )



Если хотите пост про BDD и TDD, накидайте реакций