Я использую selenium-server-standalone-2.17.0 (для IE и Firefox) и ChromeDriver 18.0.1022.0 (автономный) на тестовой коробке (Windows 7 64bit), которую я использую для запуска тестов Java на селен.
По какой-то причине при запуске моих тестов с ChromeDriver, когда он впервые сталкивается с неожиданным блоком оповещений, он блокируется на неопределенный срок, а в журнале ChromeDriver говорится:
WARNING: Executing: executeScript
Я настроил ChromeDriver с помощью руководства http://code.google.com/p/selenium/wiki/ChromeDriver и установите время ожидания всех драйверов с помощью
webDriver.manage().timeouts().implicitlyWait(3, TimeUnit.SECONDS);
Обновление: Я выяснил, как правильно инициализировать удаленный ChromeDriver с помощью
URL url = new URL("http://192.168.1.15:4444/wd/hub");
DesiredCapabilities capabilities = DesiredCapabilities.chrome();
Webdriver chromeDriver = new RemoteWebDriver(url, capabilities);
лучше всего с URL-адресом, указывающим на сервер selenium, выполняющий chromedriver в дочернем процессе.Вы можете заставить selenium-server запускать ChromeDriver, запустив его следующим образом:
java -jar C:\selenium-server.jar -Dwebdriver.chrome.driver=C:\path\to\chromedriver.exe
У меня все еще остается та же проблема с застреванием Chrome в окне неожиданного оповещения, но журнал селена дал мне немного больше информации:
INFO - Done: /session/1328623219287/element/253/click
INFO - Executing: [execute script: return !!document['readyState'];, []] at URL: /session/1328623219287/execute)
До сих пор понятия не имею, что вызывает это ... кто-нибудь может помочь?