无法使用remotewebdriver和gecko驱动程序创建新的远程会话

时间:2017-02-08 14:22:39

标签: java selenium selenium-grid remotewebdriver geckodriver

我正在尝试迁移到selenium 3,但是我在创建新的远程会话时遇到问题,我的代码如下:

 protected RemoteWebDriver driver;
    @Test
    public void testing() throws FileNotFoundException, IOException {

        System.setProperty("webdriver.gecko.driver", "C:\\java\\geckodriver.exe");
        DesiredCapabilities capability = DesiredCapabilities.firefox();
        capability.setCapability("marionette", true);
        driver = new RemoteWebDriver(new URL("http://google.com"),capability);
        System.out.println();
    }

我正在运行一个selenium网格,这是我的命令行:

java -jar selenium-server-standalone-3.0.1.jar -role hub

用于运行中心服务器的那些。

java -Dwebdriver.firefox.marionette=true -jar selenium-server-standalone-3.0.1.jar -role node -hub http://localhost:4444/grid/register

以及用于运行节点的那些。任何帮助将不胜感激。

谢谢

1 个答案:

答案 0 :(得分:2)

通过在运行selenium node时更改命令行,我发现并解决了这个问题:

java -Dwebdriver.gecko.driver=C:\java\geckodriver.exe -jar selenium-server-standalone-3.0.1.jar -role node -hub http://localhost:4444/grid/register

我注意到您甚至不需要更改您的remotewebdriver实例化,您的代码可能只是如下:

protected RemoteWebDriver driver;
@Test
public void testing() throws FileNotFoundException, IOException {
    DesiredCapabilities capability = DesiredCapabilities.firefox();
    driver = new RemoteWebDriver(new URL("http://google.com"),capability);
    System.out.println();
}