TGViewer
Программирование {BookFlow} Программирование {BookFlow} @bookflow · 15.6K subscribers
Post #4015 1.61K
Как мы ускорили Golang-тесты на CI

В этой статье я расскажу о том, как желание улучшить свой рабочий процесс CI помогло ускорить все golang-пайплайны в PaaS СберМаркета.

В СберМаркете микросервисная архитектура. В качестве CI/CD используется GitLab. На CI гоняются вполне типовые задачи по тестированию, различным проверкам, сборкам образов и т. д. Часть job предоставляется самим сервисом, часть — внедряется в пайплайн сервиса нашей платформой.

Во всех golang-сервисах пишут тесты на свой код. В разных сервисах подход к тестированию немного различается, но сейчас я не буду углубляться в виды тестирования. Общее между всеми сервисами — «в среднем по больнице» тесты гоняются на CI более 5 минут.

Я пришел в СберМаркет в конце августа 2023 года. Глядя на набор Unit-тестов в одном из наших сервисов Odin, я немного расстроился. Каждый раз нужно было ждать на CI больше 6 минут, чтобы узнать, все ли хорошо с тестами. Их в наборе было около 400.

Я подумал, что неплохо было бы разобраться со скоростью. Предположил, что проблема может быть связана с базой данных, неоптимальным сидированием, что можно улучшить очистку и добавить параллелизма. И даже начал накидывать в голове план ускорения...

https://habr.com/ru/companies/kuper/articles/806725/

Мы в MAX

👉 @Bookflow
  • ❤ 3
  • 👍 1
More from @bookflow
  1. Oct 5, 2026🖼 Из картинки - в 3D-сцену со звуком: image-blaster Загружаешь изображение, запускаешь Cl…
  2. Oct 2, 2026xdg-ninja — это полезный инструмент для программистов и пользователей Linux, который помог…
  3. Sep 29, 2026🔐 Путеводитель по аутентификации: от Cookies до OAuth 2.0 Разбираться в способах входа по…
  4. Sep 24, 2026Работа с HTTP API (на практике) Подготовил мини-серию из пары десятков практических задани…
  5. Sep 22, 2026🔎 Kor — найти забытые ресурсы в Kubernetes После экспериментов и релизов в кластере остаю…
  6. Sep 20, 2026Детальный обзор полей Галуа "Попросите Якоби или Гаусса публично высказать своё мнение — н…
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 →