Настроить сервер Selen

Я ищу ясный и краткий учебник о том, как настроить сервер Selen на удаленном хосте и как использовать его соответствующим образом. Я все еще плохо знаком с некоторыми настройками и конфигурациями серверов в целом, и документация по селену, похоже, сформулирована таким образом, чтобы обеспечить более высокий уровень понимания. У меня уже есть несколько тестов на моем локальном компьютере, которые работают, и теперь я хочу выяснить, как настроить его удаленно.

1 ответ

Сторона сервера:

Как настроить серверную часть, то есть автономный сервер + веб-драйвер (например, chromedriver).

http://docs.seleniumhq.org/docs/03_webdriver.jsp

Автономный сервер имеет помощь:

java -jar <path_to>/selenium-server-standalone-<version>.jar -help

На самом деле есть две вещи: селен-сервер (5+ МБ банка) и селен-сервер-автономный (30+ МБ банка). https://selenium-release.storage.googleapis.com/index.html?path=2.47/

Как я понимаю, селен-сервер-автономный достаточно для большинства задач. Есть тема о различиях:

http://www.seleniumwebdriver.com/selenium-rc-selenium-1-0/difference-between-selenium-server-and-selenium-server-standalone-!/

Сторона клиента:

До этого вы использовали некоторую реализацию интерфейса WebDriver в своем коде.

Скажем, вы можете использовать ChromeDriver. https://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/chrome/ChromeDriver.html

Теперь вам нужно использовать RemoteWebDriver (реализация интерфейса WebDriver): https://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/remote/RemoteWebDriver.html

Ниже приведены фрагменты кода для использования RemoteWebDriver с различными возможностями браузера: http://docs.seleniumhq.org/docs/04_webdriver_advanced.jsp

Например, может быть такой код клиента:

ChromeOptions options = new ChromeOptions();
// set some options
DesiredCapabilities dc = DesiredCapabilities.chrome();
dc.setCapability(ChromeOptions.CAPABILITY, options);
WebDriver driver = new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), dc);
driver.get("http://www.google.com");
...

Есть объяснение, как все это работает:

RemoteWebDriver - это класс реализации интерфейса WebDriver, который разработчик тестовых сценариев может использовать для выполнения своих тестовых сценариев через сервер RemoteWebDriver на удаленном компьютере.

RemoteWebDriver состоит из двух частей: сервера и клиента.

Сервер RemoteWebDriver - это компонент, который прослушивает порт для различных запросов от клиента RemoteWebDriver. Как только он получает запросы, он пересылает их любому из следующих драйверов: Firefox Driver, IE Driver или Chrome Driver, в зависимости от того, что запрашивается.

Связывающие язык клиентские библиотеки, которые служат клиентом RemoteWebDriver. Клиент, как это было раньше при локальном выполнении тестов, переводит запросы тестового сценария в полезную нагрузку JSON и отправляет их на сервер RemoteWebDriver с использованием проводного протокола JSON.

Когда вы выполняете свои тесты локально, клиентские библиотеки WebDriver напрямую связываются с вашим драйвером Firefox, драйвером IE или драйвером Chrome. Теперь, когда вы пытаетесь выполнить свои тесты удаленно, клиентские библиотеки WebDriver общаются с сервером RemoteWebDriver, а сервер общается с драйвером Firefox, драйвером IE или драйвером Chrome, в зависимости от того, что запрашивает клиент WebDriver.

Это копирование / вставка с: http://www.myyesm.com/what-is-remotewebdriver/

Другие вопросы по тегам