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

1

Всякий раз, когда мы используем RemoteWebDriver для выполнения тестов selenium-webdriver на удаленной машине, нам нужно запустить selenium-server-standalone-xxxjar на удаленной машине. До сих пор я делаю это вручную, используя следующую команду:

java -jar selenium-server-standalone-x.x.x.jar

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

// Declare firefox capabilities
DesiredCapabilities capability = DesiredCapabilities.firefox();

// Create a remote web driver 
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), capabilities);

// Navigate to test site
driver.navigate().to("http://www.google.com");

Заранее спасибо.

Теги:
selenium-webdriver

1 ответ

0

Короткий ответ заключается в том, что это невозможно. Чтобы выполнять команды на удаленном компьютере, вам нужно иметь приложение, запущенное на удаленной машине, которая служит в качестве слушателя, - ожидая выполнения команд. Это то, что в основном выполняет селен-сервер-автономный (и помимо этого он запускает тесты). Следовательно, самый простой способ сделать это - запустить сервер selenium вручную или в качестве обходного пути, вы можете выполнить скрипт в заданное время (я выполняю сборку муравьев в качестве сигнала тревоги на Mac).

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

Мое обходное решение для этого заключалось в том, чтобы настроить будильник (на Mac - вы можете найти похожие сценарии для Windows) для запуска муравьиной задачи в определенное время, которое запустит сервер. Сервер запускается примерно за две минуты до запуска фактических тестов, чтобы дать серверу время для регистрации на узле.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню