creatly-backend icon indicating copy to clipboard operation
creatly-backend copied to clipboard

Testcontainers for integration tests

Open e-zhydzetski opened this issue 4 years ago • 2 comments

Рекомендую применять testcontainers в интеграционных тестах. Если интересно - готов сделать PR.

e-zhydzetski avatar Jan 09 '22 11:01 e-zhydzetski

Привет! А какое преимущество это дает?

zhashkevych avatar Jan 10 '22 08:01 zhashkevych

Простота при запуске тестов, не нужно руками поднимать контейнер, прописывать параметры подключения, потом его стопать. Максимально раскрывается потенциал когда требуется более сложное окружение, нужна изоляция между тестами, параллельные запуски - можно под каждый тест поднимать окружение, можно под целый набор, разные версии образов, что угодно... Плюс это всё удобно настраивается через DSL языка разработки/тестирования. Не нужно согласовывать логику теста с окружением, которое поднято CI системой - тест сам отвечает за настройку своего окружения.

По сути сейчас для запуска тестов нужно:

  1. Наличие докера на ноде, где запускаются тесты. При этом либа отлично находит докер в самых разных вариациях: docker-machine, native, dind, ...
  2. go test ./...

e-zhydzetski avatar Jan 10 '22 09:01 e-zhydzetski