Многое зависит от стратегии подготовки данных: БД или АПИ. В случае с АПИ, удалять данные после выполнения теста не всегда просто, поскольку если тест все же найдёт баг (или упадёт по другим причинам), мы не понимаем, в каком именно состоянии находятся наши сущности, чтобы принимать однозначное решение об их очистке + особенности самого приложения, масштабирование и т.п. могут добавить доп. трудностей. Тут оптимальным из моей практики является очистка всех сущностей с привязкой к юзерам или до или после непосредственного запуска всех тестов, т.к. в данном случае нам не нужно хранить ссылки на рабочие объекты, мы просто чистим все, что есть. Главное тут - либо полностью изолировать окружение, либо не позволять джобам запускаться в параллель, иначе одна начнёт подтирать данные другой. С БД, с одной стороны, все проще: накатил дамп и вперёд. Но с другой, поддерживать такое решение может быть куда сложней, чем в случае с АПИ.