TGViewer
Бодрый кодер Бодрый кодер @bodrcoder · 576 subscribers
Post #583 571
А я, кажется, влюбился в testcontainers.

Короче… Я же знал, что они существуют. Видел где-то в статьях, слышал на конференциях, даже пару раз пролистывал доку. И каждый раз думал: «Ну да, прикольно, может потом».

И вот этот «потом» наконец случился.

Сейчас я как раз собираю для коллег гошный шаблон микросервиса — чтобы любой мог стартануть без боли, сразу писать бизнес-логику, а не копаться в инфраструктурной рутине. Ну и логично было заодно нормально пройтись по инструментам, которые давно висели в списке «надо потом попробовать».

И тут я такой: ладно, давай посмотрим на эти ваши testcontainers…

Блин. Кайф.
Типа прям честный кайф.

Ты просто из кода поднимаешь Kafka, Postgres, MinIO — что угодно — и тестируешь как человек. Быстрая проверка CRUD? Пара секунд. Проверка продюсера/консьюмера — ещё пару секунд. И всё. Никакого «а давайте поднимем докер-композ», никакого «подождите, сейчас локально настрою». Стартуют почти как юниты с моками, только результат реальный, живой, как в проде.

И вот это чувство… когда тесты, которые должны страдать минуту, вдруг проходят за 3 секунды — я такой:
где вы были всю мою жизнь?

Теперь жалею, что не внедрил это раньше в команде. Но зато в новый шаблон — войдут по-любому.
Если кто-то до сих пор сомневается: не сомневайтесь. Это как впервые попробовать нормальный автотестовый фреймворк после ручных проверок в Postman — назад уже не хочется.

P.S. Вот так например выглядет поднятие постгри:


pgContainer, err := postgresContainer.Run(ctx,
"postgres:18",
postgresContainer.WithDatabase("testdb"),
postgresContainer.WithUsername("testuser"),
postgresContainer.WithPassword("testpass"),
testcontainers.WithWaitStrategy(
wait.ForLog("database system is ready to accept connections").
WithOccurrence(2).
WithStartupTimeout(30*time.Second),
),
)


#golang #testcontainers #микросервисы #testing #qa #backend #go
  • 🔥 11
  • ❤ 2
  • 👍 1
  • 🌚 1
More from @bodrcoder
  1. Sep 25, 2026Всех с пятницей. #пятничныйюмор
  2. Sep 24, 2026Думаю что сейчас будут все более популярны те сервисы, которые поддерживают MCP. Скоро Нов…
  3. Sep 22, 2026Разбирал вещи, очень сильно обрадовался что нашел сокровище. Но правда оказалась печальнее…
  4. Sep 17, 2026Купился на новый инференс uzu - который обещал гипер скорость на маке. Но я когда затащил…
  5. Sep 17, 2026Post #812
  6. Sep 17, 2026Кто каким стулом пользуется для работы? У меня в свое время самый удобный стул был - за 10…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →