在 Nightwatch 中设置 Firefox 首选项

Set Firefox Preferences in Nightwatch

如何在 nightwatch 中设置 firefox 首选项?我想用 nightwatch 在 java 中做同样的事情。

FirefoxProfile profile = new FirefoxProfile();
profile.setPreference("intl.accept_languages", "de");
WebDriver driver = new FirefoxDriver(profile);

我在 chrome 中可以使用此功能,但我还是不知道如何在 Firefox 中执行此操作。

"desiredCapabilities": {
  "browserName": "chrome",
  "javascriptEnabled": true,
  "acceptSslCerts": true,
  "chromeOptions" :{
    "prefs": {
      "intl.accept_languages":"fr"
    }
  }
}

谢谢

解决方案是为您的 Nightwatch 测试创建一个 Firefox 配置文件。

1) 创建一个新的 Firefox 配置文件:

在终端中,执行此命令:“firefox -p
然后创建一个名为“webdriver”的配置文件。

2) 配置新配置文件

使用 url 转到此配置页面:about:config
搜索名称“intl.accept_languages”并更新值。
暂时退出 Firefox。

3) 配置 Nightwatch 以使用新配置文件

  1. "webdriver.firefox.profile" : "webdriver"

  2. 列表项 "browserName":“firefox

小心!它不是 "desiredCapability" 参数。

解决方案 1:(测试配置)

{
  "yourTest" : {
    "default" : {
       ...
       "webdriver.firefox.profile" : "webdriver",
       "launch_url": "http://localhost:3000",
       "desiredCapabilities" : {
         "browserName" : "firefox",
         "javascriptEnabled" : true,
         "acceptSslCerts" : true
    }
    }
  }
}

方案二:(全局配置)

{
  ...
  "selenium" : {
    "start_process" : false,
    "server_path" : "",
    "log_path" : "",
    "host" : "127.0.0.1",
    "port" : 4444,
    "cli_args" : {
      "webdriver.chrome.driver" : "",
      "webdriver.ie.driver" : "",
      "webdriver.firefox.profile" : "webdriver"
    }
  },
  ...
  "yourTest": {
    "default": {
        "launch_url": "http://localhost:3000",
        "desiredCapabilities" : {
            "browserName" : "firefox",
            "javascriptEnabled" : true,
            "acceptSslCerts" : true
        }
    },
  ...
  }
  ...
}

检查硒设置:http://nightwatchjs.org/guide#selenium-settings