Как заставить chrome работать с selenium, используя php webdriver?
все отлично работает с Firefox, но я не могу запустить chrome. Я на linux, используя привязки php webdriver.
require_once "/usr/local/src/selenium/php-webdriver-bindings-0.9.0/phpwebdriver/WebDriver.php";
putenv("PATH=".getenv("PATH").':'.'/usr/local/src/selenium/chrome_webdriver/'); //Prepare for chrome
$webdriver = new WebDriver("localhost", "4444");
//$webdriver->connect("chrome");
$webdriver->connect("chrome","",array(
'webdriver.chrome.driver'=>'/usr/local/src/selenium/chrome_webdriver/chromedriver',
));
Я получаю сообщение об ошибке"путь к исполняемому файлу chromedriver должен быть установлен webdriver.хром.свойство системы драйвера". Как вы можете видеть, я попытался установить это в массиве desiredCapabilities, но это должно быть неправильное место. Я вижу в журналах selenium, что моя настройка проходит как эта строка журнала показывает:
INFO - Executing: [new session: {javascriptEnabled=true, webdriver.chrome.driver=/usr/local/src/selenium/chrom..., browserName=chrome, nativeEvents=false, version=}] at URL: /session)
Я начинаю селен с java -jar selenium-server-standalone-2.21.0.jar
Я использую Chromium V. 18.
Я создал ярлык / usr / bin / google-chrome, который указывает на /usr/bin / chromium-browser
Я могу запустить chromedriver вручную без проблем. Он говорит:
port=9515
version=20.0.1133.0
наличие этого запуска или нет, не имеет никакого значения для сообщения об ошибке selenium дает мне.
обновление: связанный вопрос:селен 2 хром драйвер (ответ есть для java, а не php)
2 ответов
вы можете попробовать передать webdriver.хром.свойство драйвера из командной строки при запуске сервера selenium. Вот так:
java -Dwebdriver.chrome.driver = pathtochromedriver -jar selenium-server.jar
Я не уверен в причине, по которой другой не работает. Вам нужно проверить, является ли его действительно установка системного свойства из кода..
без пробелов он работал для меня на WinXP32:
java -Dwebdriver.chrome.driver=C:\chromedriver.exe -jar selenium-server.jar