Как настроить: полное руководство по ReportPortal с видео

Пошаговое руководство по установке, базовой конфигурации и интеграциям мощной платформы для анализа тестовых отчетов ReportPortal. Статья охватывает развертывание через Docker, настройку проектов, подключение тестовых фреймворков, активацию ML-анализа и настройку дашбордов.
ReportPortal заслуженно считается одним из самых мощных решений для управления результатами тестирования в DevOps-циклах. Это не просто панель для просмотра отчетов, а целая аналитическая платформа с возможностями машинного обучения, интеграцией с популярными инструментами и глубокой кастомизацией. Однако его начальная настройка может показаться daunting. Данное руководство проведет вас через ключевые этапы развертывания и конфигурации, чтобы вы быстро получили работающую и полезную систему.

Первый и фундаментальный шаг — выбор способа развертывания. ReportPortal традиционно разворачивается как набор Docker-контейнеров, что является рекомендуемым подходом для production-сред. Для начала работы вы можете использовать Docker Compose, что идеально подходит для локальных инсталляций или небольших команд. Клонируйте официальный репозиторий с GitHub, перейдите в директорию `docker-compose` и запустите команду `docker-compose -p reportportal up -d`. Этот процесс загрузит и запустит все необходимые сервисы: API, UI, сервис индексации, RabbitMQ, и, что критически важно, базы данных PostgreSQL и Elasticsearch. Для production-развертывания рекомендуется использовать Kubernetes (helm-чарты предоставлены), что обеспечит отказоустойчивость и масштабируемость.

После успешного запуска откройте браузер и перейдите по адресу `http://localhost:8080`. Вы увидите страницу входа. Учетные данные по умолчанию: логин `default`, пароль `1q2w3e`. Первое, что необходимо сделать — сменить этот пароль и создать персональные аккаунты для членов команды. Административный интерфейс интуитивно понятен, но его мощность раскрывается в деталях.

Сердце ReportPortal — это проекты. Создайте новый проект, указав его имя и тип (например, для внутреннего использования или для клиента). Важнейший выбор на этом этапе — тип индексации логов. Доступны два варианта: встроенный (для небольших проектов) и Elasticsearch (рекомендуется для любых серьезных нагрузок). Elasticsearch обеспечивает молниеносный поиск по огромным массивам логов, что незаменимо при анализе падающих тестов.

Следующий критический этап — интеграция с вашим тестовым фреймворком. ReportPortal поддерживает агенты (клиентские библиотеки) для всего спектра технологий: JUnit, TestNG, NUnit, pytest, Cucumber, Robot Framework и многих других. Рассмотрим пример для Java-стека с Maven. Добавьте зависимость `agent-java-testng` (или `junit`) в ваш `pom.xml`. Затем в ресурсах проекта создайте файл `reportportal.properties`. В нем необходимо указать базовые параметры подключения: endpoint (адрес вашего инсталлированного ReportPortal), проект, токен доступа. Токен — это ключ аутентификации, который генерируется в профиле пользователя в UI ReportPortal. Этот файл должен храниться безопасно и не попадать в системы контроля версий.

Конфигурация агента позволяет тонко настроить, какие данные и как отправляются. Вы можете контролировать уровень логирования, отправку скриншотов при падениях, тегирование запусков, прикрепление бинарных данных (логи, дампы). Запустите ваши тесты как обычно — агент автоматически перехватит выполнение и начнет отправлять данные в реальном времени на сервер ReportPortal. Вы сразу сможете наблюдать за ходом выполнения в живом дашборде.

Одна из killer-features ReportPortal — автоматическая классификация дефектов с помощью машинного обучения. Для ее настройки перейдите в настройки проекта -> «Анализ авто-дефектов». Нужно «обучить» систему, первоначально разметив некоторое количество результатов тестов, указав для падений реальные причины: продуктивный баг, автоматизационный баг, системная проблема, инцидент с инфраструктурой. Чем больше данных вы предоставите, тем точнее модель будет предлагать классификацию для новых падений, экономя массу времени аналитикам.

Не менее важны интеграции. ReportPortal можно связать с Jira, Slack, Teams, Email. Настройка интеграции с Jira позволяет автоматически создавать баг-репорты прямо из интерфейса упавшего теста, подставляя в описание весь контекст: логи, скриншоты, историю выполнения. Интеграция со Slack позволяет настраивать оповещения каналов о критических падениях или завершении регрессионных прогонов.

Для эффективного использования необходимо освоить дашборды. Вы можете создавать собственные виджеты, отображающие именно ту метрику, которая важна вашей команде: динамику стабильности сборки, топ медленных тестов, диаграмму срабатывания дефектов по компонентам. Эти дашборды можно делать общими и выводить на большие мониторы в офисе.

Обслуживание и мониторинг самого ReportPortal также важны. Следите за дисковым пространством, особенно за индексами Elasticsearch. Настройте процедуры очистки старых данных (в настройках проекта есть политики хранения запусков). Мониторьте здоровье сервисов через предоставленные эндпоинты.

В заключение, начальная настройка ReportPortal требует внимания к деталям, но окупается сторицей за счет невероятной глубины аналитики, которую он предоставляет. Это не статичный отчет, а живая система для непрерывного улучшения качества продукта и процесса тестирования.
225 4

Комментарии (7)

avatar
jntpu8z7qxs2 28.03.2026
Статья полезная, но для полного новичка всё равно сложновато. Не хватает базового глоссария: что такое агент, сервис API и т.д.
avatar
oujnhbqlws2l 28.03.2026
А есть ли сравнение с другими инструментами, тем же Zephyr? Хотелось бы понять ключевые преимущества именно ReportPortal.
avatar
eg7mmi 28.03.2026
Видео — это очень круто! Теория это хорошо, но пошаговый скринкаст сэкономит часы многим инженерам. Спасибо за труд.
avatar
h1dtdfzp1voc 29.03.2026
Мы внедрили ReportPortal полгода назад. Главный плюс — это дашборды и аналитика. Настройка окупается, советую всем QA-отделам.
avatar
idndfpupz 30.03.2026
Интересно, а насколько тяжеловесное это решение для небольшой команды из 5 человек? Не будет ли оно избыточным?
avatar
iigsx4uq 30.03.2026
Согласен, что настройка нетривиальна. У самого ушло два дня на деплой в Kubernetes. Автор, добавьте, пожалуйста, раздел про типичные ошибки.
avatar
60qhtry 30.03.2026
Отличное руководство! Как раз искал что-то структурированное по ReportPortal. Жду продолжения, особенно про интеграцию с Allure.
Вы просмотрели все комментарии