2017-10-18 20 views
2

私のSelenium/Cucumber/Mavenプロジェクトでは、インターネットと接続している仮想マシン上のWebdrivermanagerでChromeとIEドライバの最新バージョンをダウンロードしました。この後、私は、インターネットに接続せずにWindowsサーバー上(同じMavenのローカルリポジトリフォルダを使用して)同じプロジェクトを使用のIntelliJでローカルのMavenリポジトリフォルダの上書きを設定し、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さん、お返事ありがとうございます。私は、IDE IntelliJ Mavenのrepoフォルダ設定のオーバーライドもWebdrivermanagerで使用されていたと仮定していました。これをカスタムリポジトリの場所に変更することは可能ですか?これは複数のユーザーがいるGITリポジトリを使用するため、私たちの方が便利です。 – Geoffrey

+0

ローカルリポジトリの場所を変更するには、構成キー 'wdm.targetPath'を使用します。詳細については、[doc](https://github.com/bonigarcia/webdrivermanager)を参照してください。 –

+0

ありがとう、それは私が探していたものです:) – Geoffrey

関連する問題