Перфоманс Лаб

CD
CI
27 февраля, 2024

Внедряйте и масштабируйте CI/CD с помощью 8 простых шагов

Время чтения: 7 мин.
27 февраля, 2024
Автор:

Как усовершенствовать поставку новых фич в продукт? Ответ — наша методология Quality Gates Next. Она позволяет проверять новую функциональность в автоматизированном режиме — от анализа до эксплуатации.
На этапе тестирования производительности мы подключаем наш инструмент Boomq: он поможет оптимизировать процесс и автоматически проверить стандарты SLA.

Рассказываем, как организуем внедрение непрерывного тестирования.

Зачем внедрять непрерывное тестирование

Когда IT-компания развивается и производит всё больше продуктов, возрастает и риск множить ошибки, пропускать их из-за высокой загруженности тестировщиков. Если такое уже происходит, самое время задуматься о непрерывном тестировании.

В рамках этой концепции тестирование автоматически проходит на каждом этапе жизненного цикла продукта — таким образом можно отслеживать его качество на всех стадиях. Это реализуется в рамках технологии CI/CD.

СI (Continuous integration)

Непрерывная интеграция, практика DevOps в разработке программного обеспечения, когда разработчики регулярно вливают изменения кода в центральный репозиторий.

CD (Continuous delivery/ deployment)

Непрерывная доставка, возможность доставки изменений всех типов в продуктовую среду. Речь идет о новых возможностях, изменениях конфигурации, исправлениях дефектов и проверке гипотез.

Внедрение непрерывного тестирования обеспечивает:

  • Быстрое обнаружение и исправление дефектов разработчиком. Вы точно не пропустите ошибки, которые могли бы «проскочить» при ручном тестировании.
  • Высокое качество кода. Продукт можно усовершенствовать на ранних этапах.
  • Кратное ускорение производственных процессов. Сэкономив человеческие ресурсы, можно при этом получить более быстрый результат.

Как методология Quality Gates Next автоматизирует процесс разработки

Компания «Перфоманс Лаб» создала собственную методологию Quality Gates Next, которая совершенствует процесс разработки и доставки новых фич в продукт. В рамках этих пайплайнов предусмотрены quality gates, врата качества — чтобы проверить новую функциональность в автоматизированном режиме.

Когда мы получаем в пайплайне новую поставку, наша задача заключается в том, чтобы автоматизировать весь процесс: от анализа документации до принятия решения о качестве поставки.



Наш стек — проверенные инструменты Git, Gitlab CI, Jenkins, Groovy.



Вот как выглядит методология:

Как Boomq автоматизирует этап тестирования производительности

Встраивание нагрузочного тестирования в CI/CD пайплайн позволяет ускорить процесс в 5–10 раз. В этом поможет Boomq — еще одна разработка «Перфоманс Лаб»: единственный в России low-code инструмент для нагрузочного тестирования. Он позволяет создавать тесты, управлять ими, получать детальные отчеты по итогам. А еще с ним может работать даже новичок, что удобно для передачи компетенций и артефактов в компании.

Настройка автоматического тестирования производительности состоит из следующих базовых шагов:

Шаг 1

Подготовка теста

На этом шаге настраиваются наборы или цепочки запросов, определяющих модель нагрузки, реализуется параметризация и корреляция трафика, настраиваются таймеры.
Шаг 2

Настройка SLA

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

Настройка события-триггера для проверки SLA по окончании теста

Недостаточно просто запустить тест по API — надо дождаться его завершения и получить результаты. Для этого и используется триггер.
Шаг 4

Настройка вилки принятия решения

Реализовав логику автоматической проверки метрик производительности по окончании теста, вы сможете максимально быстро оценивать производительность новых версий вашей системы — и не допускать обновления, снижающие скорость работы системы, в прод.
Больше подробностей читайте в нашей инструкции.

Как итог — Boomq поможет:

  • Проверить производительность и надежность сайта или приложения.
  • Обнаружить ухудшение производительности на ранних этапах разработки.
  • Спланировать рост мощностей в соответствии с ростом плановой нагрузки.
  • Контролировать производительность каждой версии.
  • Оптимизировать e-commerce.

Внедрение CI/CD — проще, чем кажется

Улучшайте показатели бизнеса