2017-10-18 7 views
2

내 Selenium/Cucumber/Maven 프로젝트에 인터넷 연결이 가능한 가상 머신에서 Webdrivermanager를 통해 최신 버전의 Chrome 및 IE 드라이버를 다운로드했습니다. 이후 나는 인터넷에 연결하지 않고 Windows 서버에서 (같은 메이븐 지역의 repo 폴더를 사용하여) 같은 프로젝트를 사용하게 IntelliJ의 로컬 메이븐의 repo 폴더에 대한 재정의를 설정하고 forceCache 옵션 추가 :Webdrivermanager forceCache가 URL에 연결하려고 시도했습니다.

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

버전 webdrivermanager = 1.7.2

Maven 명령 mvn test clean로 Windows의 명령 줄을 통해 테스트를 실행할 때 아래 연결 오류가 발생합니다. 브라우저 드라이버는 로컬 저장소에서 사용할 수 있습니다.

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 이슈입니다. 이 문제를 해결할 수있는 제안이 있습니까? 이미 컴퓨터를 다시 시작했지만 운이 없었습니다.

답변

0

Windows 컴퓨터에서 WebDriverManager가 사용하는 캐시는 C:\Users\your-user\.m2\repository입니다. 구체적으로 크롬 드라이버의 경우 이진수는 C:\Users\your-user\.m2\repository\webdriver\chromedriver\win32\2.33\chromedriver.exe이어야합니다. forceCache() 메소드가 조사 할 내용이므로 실제로이 파일을 확인하십시오. 나는 다시 검사를 두 번하고이 기능은 여전히 ​​예상대로 작동합니다. 귀하의 경우에는 캐시 파일을 사용할 수 없으므로 WebDriverManager가이를 다운로드하려고 시도합니다.

+0

안녕하세요, Boni 님, 답장을 보내 주셔서 감사합니다. 나는 Webdrivermanager에서 repo 폴더에 대한 IDE IntelliJ Maven 설정을 재정의했다고 가정했습니다. 이것을 사용자 정의 저장소 위치로 변경할 수 있습니까? 여러 사용자가있는 GIT 저장소를 사용하기 때문에이 방법이 더 편리해 보입니다. – Geoffrey

+0

로컬 저장소 위치를 변경하기 위해 구성 키'wdm.targetPath'를 사용하십시오. 자세한 내용은 [doc] (https://github.com/bonigarcia/webdrivermanager)를 참조하십시오. –

+0

고마워요, 그게 내가 찾고 있던거야. :) – Geoffrey