2017-07-17 13 views
3
package com.merchantPlatform; 

import java.util.concurrent.TimeUnit; 
import org.openqa.selenium.WebDriver; 
import org.openqa.selenium.firefox.FirefoxDriver; 
import org.openqa.selenium.remote.DesiredCapabilities; 

public class MerchantPlatformTest { 

    public static void main(String[] args) { 

     System.getProperty("webdriver.gecko.driver", "C:\\Selenium WebDriver\\geckodriver\\geckodriver-v0.17.0-win64\\geckodriver.exe"); 

     DesiredCapabilities capabilities = DesiredCapabilities.firefox(); 
     capabilities.setCapability("marionette", true); 

     // Initialize WebDriver 
     WebDriver driver = new FirefoxDriver(capabilities); 

     /* This works fine for versions lesser than Selenium 3. For Selenium 3 and higher, it will throw java.lang.IllegalStateException */ 

     // Maximize Window 
     driver.manage().window().maximize(); 

     // Wait For Page To Load 
     driver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS); 

     // Navigate to MerchantPlatform URL 
     driver.get("http://localhost:52939/"); 

    } 

} 

エラーjava.lang.IllegalStateException:ドライバの実行可能ファイルへのパスがwebdriver.gecko.driverシステムプロパティで設定する必要があります

私はSystem.getProperty

例外で以下の例外を取得していますスレッド "main"のjava.lang.IllegalStateException:ドライバ実行ファイルへの のパスは、webdriver.gecko.driver システムプロパティで設定する必要があります。詳細については、 https://github.com/mozilla/geckodriverを参照してください。最新バージョンは、 からダウンロードできます。https://github.com/mozilla/geckodriver/releases com.google.common.base.Preconditions.checkState(Preconditions.java:738) at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:124 org.openqa.selenium.firefox.GeckoDriverService $ Builder.findDefaultExecutable(GeckoDriverService.java:115)org.openqaで でorg.openqa.selenium.firefox.GeckoDriverService.access $ 100(GeckoDriverService.java:41) で) 。 (サーバードライバーサービス)。 (FirefoxDriver.java:108) at org.openqa.selenium.firefo x.FirefoxDriver。(FirefoxDriver.java:137) com.merchantPlatform.MerchantPlatformTest.mainで(MerchantPlatformTest.java:20)

+0

webdriversのディレクトリ名の空白を削除し、 –

答えて

4

は、次のようにするSystem.setPropertyないはSystem.getPropertyを使用する必要があります。

System.setProperty("webdriver.gecko.driver", 
       "C:\\Selenium WebDriver\\geckodriver\\geckodriver-v0.17.0-win64\\geckodriver.exe"); 
1

ブラウザを開くときに間違った構文を使用しています。

System.getPropertyの代わりに、System.setPropertyを以下のように使用する必要があります。

System.setProperty("webdriver.gecko.driver", "C:\\Selenium WebDriver\\geckodriver\\geckodriver-v0.17.0-win64\\geckodriver.exe"); 

この詳細については、pageを参照してください。

+0

を試してくださいありがとうございます。setPropertyだったので、今はうまくいきます。私は両方の答えを正しくマークしましたが、できません..私はこれをたくさん検索しましたエラー、私は設定部分を逃した。 – nsCelin

関連する問題

 関連する問題