【问题标题】:Firefox 57 does not load geckoservice in Selenium during end-to-end testingFirefox 57 在端到端测试期间不会在 Selenium 中加载 geckoservice
【发布时间】:2018-05-04 05:21:23
【问题描述】:

我正在尝试加载 Firefox 以使用 selenium 测试我的 Web 应用程序。当我在 capabilities 中指定 firefox 时,我收到 SessionNotCreatedError: Unable to create new service: GeckoDriverService 错误。下面是它的样子:

var config = {
 sauceUser: process.env.SAUCE_USERNAME,
 sauceKey: process.env.SAUCE_ACCESS_KEY,
 framework: 'jasmine2',
 capabilities: {
  browserName: 'firefox',
  version: '57.0', 
  'screenResolution': '1920x1440'
 },
 specs: [
  '*.spec.js'
 ],
  jasmineNodeOpts: {
   showColors: true,
   defaultTimeoutInterval: 300000,
   print: function() {}
 },
  params: {
     defaultTimeout: 15000
 }
};

以下是我的环境的详细信息:

OS: Ubuntu 16.04 LTS 64bit
Firefox: Quantum 57 64 bit
Selenium: 3.7.1
webdriver-manager: 12.0.6
gecko driver: 0.19.1
Protractor: 5.2.0

当我运行量角器端到端测试用例时,它会抛出此错误:

[13:14:58] E/launcher - SessionNotCreatedError: Unable to create new service: GeckoDriverService
Build info: version: '3.7.1', revision: '8a0099a', time: '2017-11-06T21:07:36.161Z'
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '4.10.0-38-generic', java.version: '1.8.0_151'
Driver info: driver.version: unknown
    at Object.checkLegacyResponse (/home/dev/node_modules/selenium-webdriver/lib/error.js:546:15)
    at parseHttpResponse (/home/dev/node_modules/selenium-webdriver/lib/http.js:509:13)
    at doSend.then.response (/home/dev/node_modules/selenium-webdriver/lib/http.js:441:30)
    at <anonymous>
    at process._tickCallback (internal/process/next_tick.js:188:7)
From: Task: WebDriver.createSession()
    at Function.createSession (/home/dev/node_modules/selenium-webdriver/lib/webdriver.js:769:24)
    at Function.createSession (/home/dev/node_modules/selenium-webdriver/firefox/index.js:521:41)
    at createDriver (/home/dev/node_modules/selenium-webdriver/index.js:170:33)
    at Builder.build (/home/dev/node_modules/selenium-webdriver/index.js:632:16)
    at Local.getNewDriver (/home/dev/node_modules/protractor/built/driverProviders/driverProvider.js:53:33)
    at Runner.createBrowser (/home/dev/node_modules/protractor/built/runner.js:195:43)
    at q.then.then (/home/dev/node_modules/protractor/built/runner.js:339:29)
    at _fulfilled (/home/dev/node_modules/protractor/node_modules/q/q.js:834:54)
    at self.promiseDispatch.done (/home/dev/node_modules/protractor/node_modules/q/q.js:863:30)
    at Promise.promise.promiseDispatch (/home/dev/node_modules/protractor/node_modules/q/q.js:796:13)
[13:14:58] E/launcher - Process exited with error code 199

我尝试使用更新版本的 seleniumgecko 驱动程序,但这也无济于事。

我添加了marionette: true,但仍然遇到同样的错误。我也试过"javascriptEnabled": true, "acceptSslCerts": true,但没有成功。

【问题讨论】:

标签: selenium firefox protractor geckodriver


【解决方案1】:

当我使用 geckodriver@1.10.0 和 Firefox 57.0(64 位)时,它对我有用。

【讨论】:

  • 列出您的环境以及为使其工作而采取的步骤可能会有所帮助。但是把它放在评论中,而不是答案:)
  • 嘿@casvaart 这是我的环境 Windows 10、Firefox 57.0(64 位)、Geckodriver 1.10.0 和 JDK 1.8.0。我在早期版本中使用 Geckodriver 时发现了上述问题,但在更新到版本 1.10.0 时它可以正常工作。
猜你喜欢
  • 1970-01-01
  • 2018-05-15
  • 2019-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多