Перейти к содержимому
14 / 15

Как тестировать код, работающий с базой данных: `tmp_path`, SQLite в памяти, откат транзакции после теста?

Три уровня изоляции БД-тестов: tmp_path — встроенная фикстура pytest для уникальной временной директории под файловую БД; in-memory SQLite (sqlite:///:memory:) — БД живёт в RAM, чистая на каждый тест; transactional rollback — общая БД на session, каждый тест — внутри транзакции, rollback после = чистое состояние без пересоздания. Аналог в JS — Prisma test isolation через $transaction или pg-mem.