Java - 无法在 firefox 浏览器中使用 selenium 网格

Java - Unable to use selenium grid with firefox browser

我正在尝试 运行 带有 selenium 网格的 firefox(版本 64.0)。浏览器正在打开但未加载任何网页。有人能告诉我我错过了什么吗?这就是我获取 Webdriver 对象的方式。

public WebDriver getWebDriverInstance()
{
    DesiredCapabilities dc = DesiredCapabilities.firefox();
    String url = "http://localhost:4444/wd/hub";
    WebDriver wd = new RemoteWebDriver(new URL(url),dc);
    return wd;
}

我正在使用 selenium 网格版本 3.11.0

我用于启动集线器的命令:java -jar selenium-server-standalone-3.11.0.jar -role hub
并启动节点:java -jar selenium-server-standalone-3.11.0.jar -role node -hub http://localhost:4444/grid/reister -browser platform=LINUX.

如果我将 DesiredCapabilities.firefox() 替换为 DesiredCapabilities.chrome(),我的 chrome浏览器 运行 正确设置了测试用例。我不想在我的 shell 命令中指定浏览器类型,因为浏览器版本将在 运行 期间确定。

问题出在 geckodriver。 geckodriver 的路径不能作为命令中的参数传递,因为浏览器类型只有在运行时才知道。

因此请更新 firefox 浏览器并从 here 下载最新版本的 geckodriver。提取 zip 并将其粘贴到

/usr/bin

此解决方案适用于 linux。