【问题标题】:org.openqa.selenium.SessionNotCreatedException: Unable to create new remote session in Macorg.openqa.selenium.SessionNotCreatedException:无法在 Mac 中创建新的远程会话
【发布时间】:2017-08-01 06:42:57
【问题描述】:

我对 selenium 还很陌生,并尝试使用以下 java 代码调用 Firefox 浏览器。

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;

public class google {

    public static void main(String[] args) throws InterruptedException {
        // TODO Auto-generated method stub
        System.setProperty("webdriver.gecko.driver", "/Users/gowtham/Desktop/Selenium/geckodriver");
        WebDriver driver = new FirefoxDriver();
        driver.get("http://google.com");
        Thread.sleep(1000);
        driver.quit();
    }
}

当我运行上述代码时,我的控制台上出现以下异常。

Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: Unable to create new remote session. desired capabilities = Capabilities [{marionette=true, browserName=firefox, moz:firefoxOptions=org.openqa.selenium.firefox.FirefoxOptions@7d70d1b1, version=, platform=ANY, firefox_profile=org.openqa.selenium.firefox.FirefoxProfile@2a742aa2}], required capabilities = Capabilities [{}]
Build info: version: 'unknown', revision: '86a5d70', time: '2017-02-16 07:47:51 -0800'
System info: host: 'system', ip: 'fe80:0:0:0:2acf:e9ff:fe19:261%en0', os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.11.6', java.version: '1.8.0_45'
Driver info: driver.version: FirefoxDriver
    at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:91)
    at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:141)
    at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:82)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:601)
    at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:241)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:128)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:293)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:272)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:267)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:263)
    at org.openqa.selenium.firefox.FirefoxDriver.<init>(FirefoxDriver.java:122)
    at HelloWorls.google.main(google.java:11)

我的机器上安装了 firefox v52.0。

请分享您对此问题的看法。

【问题讨论】:

  • 当您运行代码时,浏览器会启动吗?如果不是,您可能将浏览器安装在自定义位置,并且必须像这样指定它:System.setProperty("webdriver.gecko.bin", "/path/to/bin")。见:github.com/SeleniumHQ/selenium/wiki/FirefoxDriver
  • 是的,浏览器已启动,但没有导航到 google.com。我刚刚通过将 gecko 驱动程序降级到以前的版本 0.14.0 解决了这个问题。

标签: java macos selenium firefox


【解决方案1】:

目前我无法添加 cmets,所以在这里发布解决此问题的方法。 确实,壁虎驱动版本需要降级。 对于那些使用 'bonigarcia-webdrivermanager' 的用户,请在实例化 FirefoxDriver 之前明确添加驱动程序版本:

FirefoxDriverManager.getInstance().setup("0.14.0");

【讨论】:

    猜你喜欢
    • 2017-12-19
    • 1970-01-01
    • 1970-01-01
    • 2016-11-13
    • 2020-07-28
    • 2017-03-03
    • 2017-04-02
    • 2017-02-27
    • 2017-09-10
    相关资源
    最近更新 更多