t.me/atinfo_chat Telegram группа по автоматизации тестирования

Как узнать Url ноды, на которой будет выполнен текущий тест

Теги: #<Tag:0x00007f9b02529398> #<Tag:0x00007f9b025292d0> #<Tag:0x00007f9b025291e0> #<Tag:0x00007f9b025290f0>

Контекст:
Пытаюсь разобраться с записью видео при параллельном выполнении тестов с использованием Selenium Grid. Уже познакомился с примерами от @ArtOfLife https://github.com/sskorol/docker-selenium-grid и @Sergey_Pirogov https://github.com/SergeyPirogov/video-recorder-java/
(Ребята, вам огромное спасибо)
Основная идея заключается в создании кастомного Servlet, который будет отвечать за начало и остановку видео на ноде.
Сразу оговорюсь, что и то и то решение работает из коробки. Но я сторонник глубокого понимания, того что использую, чтобы использовать его правильно и приспособить под себя, если потребуется.

Вопрос
Чтобы отправить http запрос для записи видео мне нужно знать адрес ноды, на которой будет выполнятся тест.
В примере от @ArtOfLife используется дополнительный класс HubProxy extends DefaultRemoteProxy, в котором адрес ноды можно получить из методов класса DefaultRemoteProxy.
В примере от @Sergey_Pirogov я доконца не разобрался откуда получается адрес ноды.

Подскажите как ещё можно узнать адрес ноды, на которую направится тест?

Если покопаться в коде, то вот метод получения IP ноды для testng:

1 Симпатия

Рекомендую забить на оба метода и использовать современные инструменты типа selenoid. VideoRecorder нужно использовать только когда у вас локальный запуск на винде

1 Симпатия

Сам не докопался. :slight_smile: Благодарю за помощь.

Не совсем понял, почему видео можно писать только когда локальный запуск на винде?

И спасибо @Sergey_Pirogov за код.

Чтобы было понятно откуда у кода ноги растут:smile::

Сам последний раз использовал года 1,5 назад, надеюсь API не изменился