Привет) У меня есть обычный функционал, создание юзера(регистрация), логинка, и тд. Всё работает с базой(postgres, typeorm) я покрыл тестами и в отдельных кейсах(к примеру, логин) я перед тестом(beforeAll) создаю юзера, проверяю токен и всё ок, после теста(afterAll) удаляю изера с базы. И на каждый подобный тест, где я тестирую кусочек функционала(регистрация, логин, сходные операции, например создание проекта юзера) я создаю и удаляю каждый раз нового юзера. Это вообще нормальный подход или это излишне? Это я тестирую именно куски кода, которые работают с базой, потом покрываю тестами саму api приложения(supertest) и приходится делать тоже самое?
1. Нормальны ли вовсе мои действия?
2. Нормально ли использовать настоящую базу в тестах, не мокая её никак?(всё работает и вроде не долго, на CI также всё хорошо, я думал, лучше тестировать в боевом окружении)
3. Создавая юзеров для тестов, где и как их лучше хранить? Не харкодя в каждом тесте?
Если не очень понятно, могу репку скинуть свою