Webdrivermanager forceCache пытается подключиться к URL-адресу

Для моего проекта Selenium / Cucumber / Maven я загрузил последнюю версию драйвера Chrome и IE через Webdrivermanager на виртуальной машине с подключением к Интернету. После этого я использовал тот же проект (используя ту же папку локального репо Maven) на сервере Windows без подключения к Интернету, установил переопределение для локальной папки репозитория Maven в IntelliJ и добавил параметр forceCache:

ChromeDriverManager.getInstance().forceCache().setup();
driver = new ChromeDriver();

Версия webdrivermanager = 1.7.2

При выполнении теста через командную строку Windows с помощью команды Maven mvn test clean я получаю сообщение об ошибке подключения ниже. Драйвер браузера доступен в локальном репозитории.

INFO BrowserManager - Reading https://chromedriver.storage.googleapis.com/ 
to seek [chromedriver]

[main] INFO BrowserManager - Reading 
https://chromedriver.storage.googleapis.com/ to seek [chromedriver]
[main] WARN BrowserManager - [1/3] Exception reading 
https://chromedriver.storage.googleapis.com/ to seek [chromedriver]: 
org.apache.http.conn.HttpHostConnectException Connect to 
chromedriver.storage.googleapis.com:443 
[chromedriver.storage.googleapis.com/216.58.212.208] failed: Connection 
timed out: connect

ОБНОВЛЕНИЕ: я снова выполнил свой тест через виртуальную машину с подключением к Интернету. Похоже, что Maven все еще использует папку .m2 по умолчанию, которая не содержит кэшированных драйверов браузера, и webdrivermanager пытается загрузить файлы. Так что это не проблема webdrivermanager, а проблема Maven. Есть ли у кого-нибудь предложения по устранению этой проблемы? Я уже перезапустил свою машину, но безуспешно.


person Geoffrey    schedule 18.10.2017    source источник


Ответы (1)


Кэш, используемый WebDriverManager на компьютере с Windows, расположен по адресу C:\Users\your-user\.m2\repository. Конкретно, для chromedriver двоичный файл должен находиться в C:\Users\your-user\.m2\repository\webdriver\chromedriver\win32\2.33\chromedriver.exe. Убедитесь, что этот файл действительно существует, поскольку именно его будет искать метод forceCache(). Я дважды проверил еще раз, и эта функция все еще работает, как ожидалось. В вашем случае кажется, что файл кеша недоступен, и поэтому WebDriverManager пытается его загрузить.

person Boni García    schedule 20.10.2017
comment
Привет, Бони, спасибо за ответ. Я исходил из предположения, что переопределение в настройках IDE IntelliJ Maven для папки репо также использовалось Webdrivermanager. Можно ли изменить это местоположение на настраиваемое хранилище? Нам это кажется более удобным, потому что мы используем репозиторий GIT с несколькими пользователями. - person Geoffrey; 21.10.2017
comment
Используйте конфигурационный ключ wdm.targetPath для изменения местоположения локального репозитория. Подробнее см. doc. - person Boni García; 26.10.2017
comment
Спасибо, вот что я искал :) - person Geoffrey; 30.10.2017