Подтвердить что ты не робот

Запуск Chrome WebDriver на сервере Linux без отображения

Я бы хотел запустить автоматические тесты с помощью selenium2 chrome webdriver на сервере linux.

Я уже настроил firefox для запуска на сервере с помощью Xvfb (см. http://www.semicomplete.com/blog/geekery/xvfb-firefox.html) и хотел бы сделать нечто похожее с хромом. Возможно ли это?

4b9b3361

Ответ 1

Я не смог найти способ сделать это программно для ChromeDriver, как вы можете, с помощью FirefoxBinary.

Я представил запрос на улучшение, у которого есть патч, который позволяет это сделать. Вы можете увидеть это здесь: http://code.google.com/p/selenium/issues/detail?id=2673

Изменить: Вы можете видеть ниже ответ Стивена о том, как использовать это, теперь изменение было объединено.: fooobar.com/questions/199302/...

Ответ 2

Я столкнулся с той же проблемой установки Linux-коробки с помощью selenium + хроматографа, и вот мои заметки:

Pre-Reqs:

  1. Установите JRE для запуска банки с селеном

  2. Установить сервер селена

    возьмите файл с банкой из https://code.google.com/p/selenium/downloads/list)

  3. Установите xvfb (вы, кажется, уже достигли этой части)

  4. Установите Google-Chrome для вашего дистрибутива Linux

  5. Скачать драйвер Chrome Вы можете взять его отсюда: https://sites.google.com/a/chromium.org/chromedriver/downloads

  6. Установите другие зависимости от селена, которые могут вам понадобиться (но приведенное выше - минимум, чтобы заставить работать chromedriver)

Для запуска:

  1. Запустите xvfb

Xvfb :1 -screen 5 1024x768x8 &

export DISPLAY=:1.5

  1. Запустите сервер selenium с опциями ChromeDriver. Это будет выглядеть примерно так:

java -jar selenium-server-standalone-2.30.0.jar -Dwebdriver.chrome.bin=/path/to/google-chrome -Dwebdriver.chrome.driver=/path/to/chromedriver

  1. Журнал сервера selenium должен выводить что-то похожее на это:

19 марта 2013 г. 10:07:27 org.openqa.grid.selenium.GridLauncher main ИНФОРМАЦИЯ: Запуск автономного сервера

Установка системного свойства webdriver.chrome.bin в {местоположение google-chrome}

Установка системного свойства webdriver.chrome.driver в {местоположение chromedriver}

10:07:34.258 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub

10:07:34.259 INFO - Version Jetty/5.1.x 10:07:34.259 INFO - Started HttpContext[/selenium-server/driver,/selenium-server/driver] ...

Ссылка: http://www.yann.com/en/use-xvfb-selenium-and-chrome-to-drive-a-web-browser-in-php-23/08/2012.html

Ура!