2016-09-19 7 views
1

私はちょうどセレン3.0.0-ベータ3に更新され、私はgeckodriver.exeのV.10をダウンロードしていることを追加したFirefoxの45セレン3でスタートFirefoxのThreadLocalのドライバ - Javaの

でテストを実行しようとしています私のPATH環境変数。

org.openqa:私は完全に正常に動作クロームドライバを使用するときに私がやるように私はまた、しかし、私はまだ、次のTestNGのメッセージで終わる、geckodriverのコードでは、システムプロパティを設定しています。 selenium.WebDriverException:ドライバ 実行可能ファイルへのパスは、webdriver.gecko.driverシステムプロパティで設定する必要があります。詳細については、 を参照してください。https://github.com/mozilla/geckodriverを参照してください。 最新バージョンは https://github.com/mozilla/geckodriver/releasesコマンド期間または タイムアウトからダウンロードすることができます。情報を構築する411ミリ秒:バージョン:「2.52.0」、リビジョン: 「4c2593cfc3689a7fcd7be52549167e5ccc93ad28」、時間:「2016年2月11日11時22分43秒 を'システム情報:ホスト:' VMP-2316 '、IP:'10 .80.50.100'、os.name: 'Windows 10'、os.arch: 'amd64'、os.version:'10 .0 '、java.version: '1.8.0_92' ドライバー情報:org.openqa.selenium.remote.RemoteWebDriver

ここでは、私は、ドライバを設定するために使用していたコードです:

// Set Driver 
threadDriver = new ThreadLocal<RemoteWebDriver>(); 
DesiredCapabilities dc = new DesiredCapabilities(); 

System.setProperty("webdriver.gecko.driver", "path/to/geckodriver.exe"); 

dc.setBrowserName(DesiredCapabilities.firefox().getBrowserName()); 
dc.setCapability("marionette", true); 

threadDriver.set(new RemoteWebDriver(new URL("http://localhost:4444/wd/hub"), dc)); 

答えて

3

もう一つの方法は、サーバ/ノードの起動コマンドラインでドライバのパスを定義するには、次のようになります。私はあなたがグリッドに対してテストを実行していることを推測してい

java -Dwebdriver.gecko.driver=path/to/geckodriver.exe -jar selenium-server-standalone-3.0.0-beta3.jar 
0

。 グリッドに対してテストを実行すると、3つのマシンが関与します。

  1. Machine_A - グリッドハブが実行される場所である - これは、テストケースがmachine_bで
  2. 実行のためにスピンオフされる場所です。
  3. Machine_C - これは、Gridノードが実行される場所と、ブラウザが開かれるマシンです。あなたのケースでは

あなたはMachine_Cを持っていることを確認する必要がありますいずれか

  1. geckodriverバイナリパスがJVMを経由してセレンノードに通知され、PATH変数(または)で利用可能なgeckodriverバイナリ引数-Dwebdriver.gecko.driver(フロランは、前述のように)

声明System.setProperty("webdriver.gecko.driver", "path/to/geckodriver.exe");はMachine_Aではなく、それは実際に行動する必要がありますMachine_C(上その効果を持っています)。

希望に役立ちます!

関連する問題