当前位置: 首页 > 知识库问答 >
问题:

java.lang.IllegalStateExcture:驱动程序可执行文件的路径必须由webdriver.gecko.driver系统属性设置

壤驷深
2023-03-14
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/");

    }

}

错误

我得到以下异常与System.get属性

线程“main”java中出现异常。lang.IllegalStateException:驱动程序可执行文件的路径必须由webdriver设置。壁虎。驱动系统属性;有关详细信息,请参阅https://github.com/mozilla/geckodriver.最新版本可从以下网站下载:https://github.com/mozilla/geckodriver/releases在com.google.常见的基础先决条件。org上的checkState(premissions.java:738)。openqa。硒。遥远的服务司机服务。findExecutable(DriverService.java:124)位于org。openqa。硒。火狐。壁虎服务。在org上访问$100(GeckoDriverService.java:41)。openqa。硒。火狐。GeckoDriverService$Builder。findDefaultExecutable(GeckoDriverService.java:115)位于org。openqa。硒。遥远的服务DriverService$Builder。在org上构建(DriverService.java:330)。openqa。硒。火狐。火狐司机。toExecutor(FirefoxDriver.java:207)位于org。openqa。硒。火狐。火狐司机。(FirefoxDriver.java:108)在org。openqa。硒。火狐。火狐司机。(FirefoxDriver.java:137)在com上。商业平台。商品平台测试。main(MerchantPlatformTest.java:20)

共有2个答案

丁韬
2023-03-14

我注意到您在打开浏览器时使用了错误的语法。

而不是使用系统。getProperty,您必须使用系统。setProperty如下所述。

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

有关此问题的更多详细信息,请参阅本页。

晋西岭
2023-03-14

你必须使用这个系统。setProperty不是系统。getProperty如下所示。

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