Как тестировать с Docker?

Middle
424 просмотров
AFK Offer AI

Для интеграционных тестов с реальной БД/Redis/Kafka используй testcontainers-go. Пример: container, _ := postgres.RunContainer(ctx) — поднимает PostgreSQL в Docker, отдаёт connection string. После теста — container.Terminate(ctx). В TestMain поднимаешь контейнер один раз для всего пакета. Альтернатива — docker-compose в CI: поднять зависимости перед go test. Для локальной разработки — Makefile с docker-compose up -d test-deps. Тесты с Docker медленнее unit-тестов, поэтому защищай их build tag или testing.Short().

Следующий вопрос

Что такое SKIP LOCKED?