Firefox headless在无头redhat linux计算机上崩溃

问题描述 投票:1回答:1

我正在尝试使用无头firefox在无头redhat linux构建机器上运行硒测试。我创建驱动程序的方法如下:

private static WebDriver createFireFoxDriver() {
    WebDriverManager.firefoxdriver()
            .setup();

    FirefoxOptions options = new FirefoxOptions();
    options.setHeadless(true);
    options.addPreference("browser.download.folderList", 2);
    options.addPreference("browser.download.dir", ABSOLUTE_PATH_TO_FOLDER);
    options.addPreference("browser.download.manager.showWhenStarting", false);
    options.addPreference("browser.helperApps.neverAsk.saveToDisk", "application/json");

    return new FirefoxDriver(options);
}

我在日志文件中看到的错误看起来像:

[Parent 65433, Gecko_IOThread] WARNING: pipe error (82): Connection reset by peer: file /builds/worker/workspace/build/src/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 358
[Parent 65433, Gecko_IOThread] WARNING: pipe error: Broken pipe: file /builds/worker/workspace/build/src/ipc/chromium/src/chrome/common/ipc_channel_posix.cc, line 727

###!!! [Parent][MessageChannel] Error: (msgtype=0x1E0074,name=PBrowser::Msg_StopIMEStateManagement) Channel error: cannot send/recv


###!!! [Parent][MessageChannel] Error: (msgtype=0x1E008F,name=PBrowser::Msg_Destroy) Channel error: cannot send/recv

1579539977190   Marionette  TRACE   [11] Frame script loaded
1579539977191   Marionette  TRACE   [11] Frame script registered
A content process crashed and MOZ_CRASHREPORTER_SHUTDOWN is set, shutting down

我已经检查了计算机上是否还安装了正确版本的gtk,glib,pango,xorg和libstdc ++。有人使用无头构建机遇到过此问题吗?

Firefox版本:68.4.1 |硒版本:3.141.59 | Geckdriver版本:0.26.0

java selenium firefox geckodriver headless
1个回答
0
投票

关于Which Firefox browser versions supported for given Geckodriver version?中的讨论,您在使用的二进制文件中没有看到任何版本错误。

唯一的怀疑者是setHeadless()类的setHeadless()方法,根据文档,其方法如下:

FirefoxOptions

非常有效,您的代码块将是:

setHeadless(boolean headless)

更新

另外<< [键:

    FirefoxOptions options = new FirefoxOptions(); options.setHeadless(true)
  • browser.download.folderList
  • browser.download.dir
  • browser.download.manager.showWhenStarting
  • 需要使用

    browser.helperApps.neverAsk.saveToDisk的实例通过setPreference()方法进行配置,如下所示:

    FirefoxProfile()
    您可以在FirefoxProfile profile = new FirefoxProfile(); profile.setPreference("browser.download.folderList", 2); profile.setPreference("browser.download.dir", ABSOLUTE_PATH_TO_FOLDER); profile.setPreference("browser.download.manager.showWhenStarting", false); profile.setPreference("browser.helperApps.neverAsk.saveToDisk", "application/json"); 中找到相关的详细讨论
  • © www.soinside.com 2019 - 2024. All rights reserved.