Три подхода: 1) Мокирование — Mock репозиторий/ORM, быстро, но не тестирует SQL. 2) SQLite in-memory — быстро, но отличия от PostgreSQL (нет JSONB, другой SQL). 3) Реальная БД — testcontainers поднимает PostgreSQL в Docker, максимально реалистично. Для Django: TransactionTestCase — каждый тест в транзакции. Для SQLAlchemy: fixture создаёт сессию с savepoint, rollback после теста. Factory_boy для тестовых данных. Не тестируй ORM — тестируй свои запросы и бизнес-логику.
Как тестировать работу с базой данных?
Middle
232 просмотровAFK Offer AI
Как работает hash() в Python?