2025/06/09 19:39:13

Как мы тестируем платформу роботизации Primo RPA — и почему перешли на НТБот

Платформа роботизации Primo RPA используется в крупнейших компаниях страны. Почему для тестирования ее производительности команда перешла на НТБот, чем не устраивал JMeter и как теперь выглядит процесс тестирования, читайте в статье.

Содержание

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

Primo RPA — это полнофункциональная платформа для внедрения роботизации любой сложности и масштаба: от запуска роботов-ассистентов до полной автоматизации ключевых бизнес-процессов. Архитектурно она состоит из множества компонентов, а значит, требует регулярного и глубокого функционального и нефункционального тестирования. Количество точек приложения тестирования огромно. Сколько бы сценариев мы ни проверяли, всегда есть ощущение, что можно охватить больше — и копнуть глубже.

Особое внимание мы уделяем производительности: стабильность при высоких нагрузках критична для большинства наших клиентов, среди которых есть крупные промышленные предприятия, нефтегазовые компании, финансовые и государственные учреждения.

Что не так с JMeter — и почему это стало проблемой

Исторически мы использовали JMeter — известный и надежный open source-инструмент. Он стал настолько привычным, что его плюсы воспринимаются как должное, а минусы — как неизбежные компромиссы. Основную задачу — генерацию нагрузки и сбор метрик — он выполняет на четыре с плюсом.

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

  • Неудобная работа с большими наборами сценариев и артефактов
  • Отсутствие централизованного хранилища скриптов и данных
  • Ограниченный мониторинг в реальном времени
  • Сложности с повторным использованием и параметризацией настроек

Многие из этих ограничений мы научились обходить своими силами: самописными утилитами, настройками окружения, дополнительными скриптами. Это позволило сгладить острые углы, но не избавило от системных ограничений.

Что предлагает НТБот — и как это меняет процесс

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

Основная задача, которую сейчас решает НТБот — удобное управление сценариями нагрузочного тестирования и запуском тестов. Можно сказать, что для JMeter появился аналог контроллера из Performance Center или BlazeMeter.

В частности, НТБот предлагает:

  • Хранилище скриптов, тестовых данных, UDV, расписаний и других фундаментальных артефактов JMeter
  • Графический интуитивно понятный интерфейс по созданию сценариев из этих артефактов
  • Встроенный онлайн-мониторинг за ходом выполнение теста
  • Историю запусков с возможностью их сравнения

Да, все это можно делать и в базовом JMeter, но придется повозиться, а наглядность результатов оставит желать лучшего. НТБот же предлагает красивую коробку, которая является самодостаточной для организации прозрачного контроля и управления запусками тестов. Уже первая версия инструмента оказалась полноценным решением для обозначенного комплекса задач нагрузочного тестирования, а не косметической надстройкой над базовыми функциями JMeter.

Опыт миграции и работа с НТБот на практике

Миграцию на НТБот мы начали с импорта JMX-скриптов и пересоздания существующих сценариев нагрузочного тестирования. Процедура однократная и не слишком трудоемкая. После того как основные артефакты были перенесены, дальнейшая работа с тестами упростилась — и это стало ощутимо уже в первые недели. После завершения миграции основной процесс работы со сценариями выглядит следующим образом:

1. Добавляем артефакты в сценарий
2. Создаем расписания запуска скриптов и задаем другие настройки
3. Запускаем тест

Настройка сценариев — в первую очередь расписаний запусков и параметров работы с тестовыми данными — теперь выглядит гораздо более эргономичной. Типовые монотонные операции выполняются быстрее за счет возможности копирования и повторного использования ранее заданных параметров. Перезапуск теста по готовому сценарию сводится к нажатию одной кнопки.

После запуска встроенный мониторинг НТБот позволяет отслеживать выполнение теста в реальном времени. При этом мы не теряем совместимость с уже существующей системой мониторинга — можно по-прежнему использовать собственные backend listeners, если они были настроены ранее.

Особенно удобно, что результаты теста доступны сразу по завершении, а также можно сравнивать два разных запуска — не просто «в целом», а по конкретным интервалам подачи нагрузки. Это одна из тех функций, которые сложно реализовать вручную, но очень полезно иметь под рукой при анализе изменений в производительности.

Также стоит отметить стабильность и отсутствие заметных ошибок самого инструмента.

Что это дало команде и проекту

Смоделировать сценарии, недоступные в JMeter, НТБот пока не может, и поэтому сами результаты тестирования и показатели производительности Primo RPA не изменились. Однако переход на НТБот дал нам важные организационные преимущества. Мы смогли упростить процесс тестирования, снизить количество рутинных операций и повысить прозрачность работы с нагрузкой. Добавление и актуализация артефактов теперь не вызывают затруднений, а работа с уже созданными сценариями — предсказуема и экономит время.

Мы рекомендуем попробовать НТБот командам, которые хотели бы упростить работу с JMeter при проведении нагрузочного тестирования и тестирования производительности.