Селеновая сетка не работает без локальной установки хром-драйвера - PullRequest
0 голосов
/ 24 августа 2018

Я запустил следующие команды, чтобы запустить и запустить мою сетку / концентратор селена:

Концентратор: java -jar selenium-server-standalone-3.14.0.jar -role hub

узел: java -jar selenium-server-standalone-3.14.0.jar -role node -hub http://localhost:4444/grid/register

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

Я подключился к концентратору через:

 driver = webdriver.Remote(
                command_executor='http://localhost:4444/wd/hub',
                desired_capabilities=DesiredCapabilities.CHROME)

и он подключается нормально ... однако, если у меня нет chromedriver (например, если бы я делал это без сетки), загруженного и установленного в $ PATH, приложение завершится ошибкой.

Это нормально? У меня сложилось впечатление, что весь смысл Selen-Grid и всей этой удаленной логики заключался в том, что не нужно устанавливать отдельные драйверы на «клиентском» компьютере.

Ответы [ 2 ]

0 голосов
/ 24 августа 2018

Selenium не контролирует браузер, драйвер делает. Selenium с ролью концентратора - это сервер и балансировщик для selenium с ролью узла, а узел говорит с драйвером. На каждом клиентском компьютере вам понадобятся jar и драйверы селеновой, которые будут говорить с концентратором.

Как это работает с концентратором:

           ⇄ node ⇄ driver ⇄ browser (same machine)
code ⇄ hub ⇄ node ⇄ driver ⇄ browser (another machine)
           ⇄ node ⇄ driver ⇄ browser (another machine)
0 голосов
/ 24 августа 2018

да, обязательно устанавливать браузер и его совместимый драйвер на клиентский компьютер Ниже изображение покажет, как это работает enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...