Да, модульные тесты должны начинаться и заканчиваться «чистой» базой данных, файловой системой и т. Д. Каждый тест должен оставлять вещи такими, какими они были.
Помимо всего прочего, это помогает с возможностью повторного запуска - вы можете продолжать повторять тесты раз за разом.
Однако иногда при разработке и отладке может быть полезно отключить удаление данных.
Существует реальное средство для достижения всего этого, например, при работе с Java, Spring и базами данных вы можете использовать управление транзакциями Spring, чтобы просто откатить все ваши изменения с нулевым усилием.