gpt4 book ai didi

Firefox-Portable 出现 Java Selenium 错误

转载 作者:行者123 更新时间:2023-12-02 09:40:06 30 4
gpt4 key购买 nike

在将我们严重过时的 FirefoxPortable 更新到最新版本 68.0.1 后,我正在努力让我们的集成测试恢复并运行。据了解我使用了geckodriver。但我不断收到以下消息。

错误:

org.openqa.selenium.SessionNotCreatedException(Unable to find a matching set of capabilities
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_171'
Driver info: driver.version: FirefoxDriver

代码:

    if (OS.isFamilyWindows()) {

FirefoxBinary binary =
new FirefoxBinary(new File(binPath + "/firefoxWindows/FirefoxPortable.exe"));
FirefoxOptions firefoxOptions = new FirefoxOptions();
firefoxOptions.setCapability("marionette", true);
System.setProperty("webdriver.gecko.driver", binPath + "/geckoWindows/geckodriver.exe");
firefoxOptions.setBinary(binary);
ffDriver = new FirefoxDriver(firefoxOptions);
}

我们的集成测试将在共享的 Linux Jenkins 测试服务器上执行。目前我使用的是 Windows。

我想继续使用可移植版本的 Firefox,以防止与使用同一台计算机的其他团队发生冲突。不幸的是,也没有安装 Docker 的选项。

我们正在使用 Java.version:“1.8.0_171”,但我们发布得太晚,无法切换到更高版本。

我应该切换到 Chrome 吗?

我需要一个快速的解决方案,谢谢。

最佳答案

由于您使用的是 FirefoxPortable v68.0.1,因此您可能使用的是最新版本的 Selenium v​​3.141.59,因此必须使用 GeckoDriver。据观察,在ma​​rionette的帮助下使用以下代码块GeckoDriver能够启动FirefoxPortable v68.0.1浏览器,但很快就会崩溃一个错误。

  • 代码块:

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


    public class A_Portable_Firefox {

    public static void main(String[] args) {

    System.setProperty("webdriver.gecko.driver", "C:\\Utility\\BrowserDrivers\\geckodriver.exe");
    FirefoxOptions options = new FirefoxOptions();
    options.setBinary("C:\\FirefoxPortable\\FirefoxPortable.exe");
    WebDriver driver = new FirefoxDriver(options);
    driver.get("https://stackoverflow.com");
    System.out.println("Page Title is : "+driver.getTitle());
    driver.quit();
    }
    }
  • 错误堆栈跟踪:

    Exception in thread "main" org.openqa.selenium.SessionNotCreatedException: Unable to find a matching set of capabilities
    Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:13:22.693Z'
    System info: host: 'DEBANJAN', ip: '192.168.1.125', os.name: 'Windows 8', os.arch: 'amd64', os.version: '6.2', java.version: '1.8.0_172'
    Driver info: driver.version: FirefoxDriver
  • 浏览器快照:

FirefoxPortable

<小时/>

分析

根据讨论GeckoDriver v0.23.0 is unable to initiate a new session through FirefoxPortable @andrestt 明确提到:

I’m afraid Firefox Portable is not supported by geckodriver.

@whimboo 进一步补充道:

If the splash screen (or what this is) is blocking Firefox from fully starting up, then Marionette will not be enabled.

关于Firefox-Portable 出现 Java Selenium 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57148080/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com