AL
1. Nest e2e - фактически один тест, который проверяет, что энв работает, коннекты есть, запросы отправляются.
2. Юниты. Если есть жирный кусок логики, который можно вынести в чистые функции - никаких внешних запросов, никакой базы данных - то для них пишем тесты. Там не нужно никаких моков писать, ничего придумывать для инициализации и тд.
Для всего остального мы тесты не пишем.
В целом в проекте тестов очень мало, тк самая зубодробительная логика у нас в SQL - есть запросы длинной строк по 50-80, с кучей вложенностей, хранимками, окнами и тд. Но это и хорошо - такой запрос один раз написал, и теперь он не сломается. А писать на такие запросы тесты - это готовить таблицы, гонять их и валидировать результат. С учетом того, что код запросов не меняется, получится, что мы просто замедлим себе прогон тестов, а в ответ ничего не получим. Нам оно не надо.
Поэтому несмотря на покрытие в условные 5-10%, прям багов-регрессий, когда что-то работало, но перестало - почти нет. За год буквально штук 5 случаев.
Вот UI у нас периодчески разваливается, и поэтому мы будем вводить настоящие e2e. Но не сейчас, а где-то в середине лета.









