J3qx

information archive

Posts Tagged ‘QA’

Автоматизация нагрузочного тестирования банковского ПО для терминалов

Posted by j3qx на Июнь 10, 2017

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

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

Помимо общих слов, хотелки сводились к следующему: необходимо обеспечить автоматический деплой ПО на нагрузочный стенд, придумать легкий способ генерации данных, внедрить автоматический и полуавтоматический способ запуска тестов, снабдить тесты автоматическим триггером старта и остановки по событию, подключить механику НТ к трекеру задач для короткого репортинга, подключить систему тестирования к доступной системе аналитики НТ, создать возможность “покраски” плохих и хороших релизов для дальнейших действий в workflow (выкатить или отправить репорт). Требования, надо признать, абсолютно адекватные и понятные.

 

Читать далее…

Реклама

Posted in IT expert | Отмечено: , | Leave a Comment »

Slow Cooker: нагрузочное тестирование сетевых сервисов

Posted by j3qx на Январь 20, 2017

inkerd, наша сервисная сетка (service mesh) для облачных приложений, по долгу службы обязана на протяжении длительного времени справляться с большими объемами сетевого трафика. Перед выпуском очередного релиза соответствие этому требованию необходимо тщательно проверять. В этой статье мы опишем стратегии нагрузочного тестирования и использованные нами инструменты, а также рассмотрим несколько обнаруженных проблем. В итоге будет представлен slow_cooker — написанный на Go инструмент нагрузочного тестирования с открытым исходным кодом, который был создан для выполнения длительных нагрузочных тестов и выявления проблем жизненного цикла (lifecycle issue identification).

linkerd действует как прозрачный прокси. Он добавляет к предназначенным для определенных сервисов запросам использование пулов соединений, отработку отказов, повторные попытки, балансировку нагрузки с учетом задержек и многое другое. Чтобы быть жизнеспособной и пригодной для промышленной эксплуатации системой, linkerd должен уметь справляться с очень большим количеством запросов на протяжении длительных периодов времени в условиях меняющейся обстановки. К счастью, linkerd построен на основе netty и Finagle. Среди всех сетевых программ их код является одним из самых широко протестированных и проверенных в процессе промышленной эксплуатации. Но код — это одно, а реальная производительность — совсем другое.

Читать далее…

Posted in IT expert | Отмечено: , , , | Leave a Comment »