小编典典

ChromeDriver在Jenkins Selenium作业上不断崩溃:“ WebDriverError:Chrome无法启动:崩溃”

jenkins

我正在尝试使用使用 硒*chromedriver的
量角器Jenkins 上运行一些自动化测试。
***

我还设置了 xvfb, 以便我们可以 无头 运行这些测试。我已经安装了 xvfb jenkins插件 ,并且可以正常工作。


错误

我遇到的问题是,当我开始测试时,chrome不断崩溃。我收到此错误:

E/launcher - WebDriverError: unknown error: Chrome failed to start: crashed
...
E/launcher - Process exited with error code 199

建立

这是我有关系统设置的信息:

  • Chrome
    • 位置: /usr/bin/google-chrome
    • 版本:Chromium 52.0.2743.0
  • ChromeDriver
    • 位置: {project_home}/src/js/node_modules/webdriver-manager/selenium/chromedriver_2.24
    • 版本:ChromeDriver 2.24.417424
  • selenium
    • 位置: {project_home}/src/js/node_modules/webdriver-manager/selenium/selenium-server-standalone-2.53.1.jar
    • 版本:2.53.1
  • protractor
    • 位置: {project_home}/src/js/node_modules/protractor
    • 版本:4.0.9
  • webdriver-manager
    • 位置: {project_home}/src/js/node_modules/webdriver-manager
    • 版本:10.2.4
  • Jenkins
    • 版本:1.6.17
  • xvfb
    • 版本:未知
  • Node
    • 版本:6.7
  • Java
    • 版本:java-8-openjdk-amd64

输出量

这是Jenkins的控制台输出:

...
21:58:07.380 INFO - Launching a standalone Selenium Server
21:58:07.407 INFO - Java: Oracle Corporation 25.111-b14
21:58:07.407 INFO - OS: Linux 4.4.0-47-generic amd64
21:58:07.418 INFO - v2.53.1, with Core v2.53.1. Built from revision a36b8b1
21:58:07.473 INFO - Driver provider org.openqa.selenium.ie.InternetExplorerDriver registration is skipped:
registration capabilities Capabilities [{ensureCleanSession=true, browserName=internet explorer, version=, platform=WINDOWS}] does not match the current platform LINUX
21:58:07.474 INFO - Driver provider org.openqa.selenium.edge.EdgeDriver registration is skipped:
registration capabilities Capabilities [{browserName=MicrosoftEdge, version=, platform=WINDOWS}] does not match the current platform LINUX
21:58:07.474 INFO - Driver class not found: com.opera.core.systems.OperaDriver
21:58:07.474 INFO - Driver provider com.opera.core.systems.OperaDriver is not registered
21:58:07.475 INFO - Driver provider org.openqa.selenium.safari.SafariDriver registration is skipped:
registration capabilities Capabilities [{browserName=safari, version=, platform=MAC}] does not match the current platform LINUX
21:58:07.475 INFO - Driver class not found: org.openqa.selenium.htmlunit.HtmlUnitDriver
21:58:07.475 INFO - Driver provider org.openqa.selenium.htmlunit.HtmlUnitDriver is not registered
21:58:07.527 INFO - RemoteWebDriver instances should connect to: http://127.0.0.1:4444/wd/hub
21:58:07.527 INFO - Selenium Server is up and running
Current webdriver status: [21:58:08] I/status - selenium standalone version available: 2.53.1 [default]
[21:58:08] I/status - chromedriver versions available: 2.22, 2.24 [default]
[21:58:08] I/status - geckodriver version available: v0.9.0 [default]
[21:58:08] I/status - android-sdk is not present
[21:58:08] I/status - appium is not present
**** STARTING GUI TESTS ****


Running ./node_modules/protractor/bin/protractor conf-server.js
[21:58:08] I/local - Starting selenium standalone server...
[21:58:08] I/launcher - Running 1 instances of WebDriver
[21:58:09] I/local - Selenium standalone server started at http://10.0.0.82:33509/wd/hub
[21:59:09] E/launcher - unknown error: Chrome failed to start: crashed
  (Driver info: chromedriver=2.24.417424 (c5c5ea873213ee72e3d0929b47482681555340c3),platform=Linux 4.4.0-47-generic x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 60.17 seconds
Build info: version: '2.53.1', revision: 'a36b8b1', time: '2016-06-30 17:37:03'
System info: host: 'ip-10-0-0-82', ip: '10.0.0.82', os.name: 'Linux', os.arch: 'amd64', os.version: '4.4.0-47-generic', java.version: '1.8.0_111'
Driver info: org.openqa.selenium.chrome.ChromeDriver
[21:59:09] E/launcher - WebDriverError: unknown error: Chrome failed to start: crashed
  (Driver info: chromedriver=2.24.417424 (c5c5ea873213ee72e3d0929b47482681555340c3),platform=Linux 4.4.0-47-generic x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 60.17 seconds
Build info: version: '2.53.1', revision: 'a36b8b1', time: '2016-06-30 17:37:03'
System info: host: 'ip-10-0-0-82', ip: '10.0.0.82', os.name: 'Linux', os.arch: 'amd64', os.version: '4.4.0-47-generic', java.version: '1.8.0_111'
Driver info: org.openqa.selenium.chrome.ChromeDriver
    at WebDriverError ({project_home}/src/js/node_modules/selenium-webdriver/lib/error.js:27:5)
    at Object.checkLegacyResponse ({project_home}/src/js/node_modules/selenium-webdriver/lib/error.js:639:15)
    at parseHttpResponse ({project_home}/src/js/node_modules/selenium-webdriver/http/index.js:538:13)
    at client_.send.then.response ({project_home}/src/js/node_modules/selenium-webdriver/http/index.js:472:11)
    at ManagedPromise.invokeCallback_ ({project_home}/src/js/node_modules/selenium-webdriver/lib/promise.js:1379:14)
    at TaskQueue.execute_ ({project_home}/src/js/node_modules/selenium-webdriver/lib/promise.js:2913:14)
    at TaskQueue.executeNext_ ({project_home}/src/js/node_modules/selenium-webdriver/lib/promise.js:2896:21)
    at asyncRun ({project_home}/src/js/node_modules/selenium-webdriver/lib/promise.js:2820:25)
    at {project_home}/src/js/node_modules/selenium-webdriver/lib/promise.js:639:7
    at process._tickCallback (internal/process/next_tick.js:103:7)
From: Task: WebDriver.createSession()
    at Function.createSession ({project_home}/src/js/node_modules/selenium-webdriver/lib/webdriver.js:329:24)
    at Builder.build ({project_home}/src/js/node_modules/selenium-webdriver/builder.js:458:24)
    at Local.DriverProvider.getNewDriver ({project_home}/src/js/node_modules/protractor/built/driverProviders/driverProvider.js:37:33)
    at Runner.createBrowser ({project_home}/src/js/node_modules/protractor/built/runner.js:198:43)
    at {project_home}/src/js/node_modules/protractor/built/runner.js:277:30
    at _fulfilled ({project_home}/src/js/node_modules/q/q.js:834:54)
    at self.promiseDispatch.done ({project_home}/src/js/node_modules/q/q.js:863:30)
    at Promise.promise.promiseDispatch ({project_home}/src/js/node_modules/q/q.js:796:13)
    at {project_home}/src/js/node_modules/q/q.js:604:44
    at runSingle ({project_home}/src/js/node_modules/q/q.js:137:13)
[21:59:09] E/launcher - Process exited with error code 199

量角器配置

exports.config = {
  seleniumServerJar: './node_modules/webdriver-manager/selenium/selenium-server-standalone-2.53.1.jar',
  chromeDriver: './node_modules/webdriver-manager/selenium/chromedriver_2.24',

  capabilities: {
    'browserName': 'chrome',
    'chromeOptions': {
      binary: '/usr/bin/google-chrome',
      args: ['--enable-logging','--v=1'],
      extensions: []
    }
  },

  framework: 'custom',
  frameworkPath: require.resolve('./node_modules/protractor-cucumber-framework'),
  specs: [
      '../../features/gui/active/*.feature'
  ],

  onPrepare: function ()
  {
    require('babel-register')({ presets : ['es2015'] })
  }
};

Jenkins xvfb插件

xvfb配置


有关

  • Chrome参考:https//sites.google.com/a/chromium.org/chromedriver/help/chrome-doesn-t-start
  • 未知错误:Chrome无法启动:异常退出(驱动程序信息:chromedriver = 2.9建议配置xvfb
  • WebDriverError:未知错误:Chrome无法启动:退出异常未解决
  • https://github.com/seleniumhq/selenium-google-code-issue-archive/issues/8409建议使用直接连接:“量角器无需使用Selenium服务器即可直接针对Chrome和Firefox进行测试。要在配置中使用文件集directConnect:true。”
  • Selenium Webdriver和Chrome驱动程序-无法运行Chrome驱动程序建议改用Java 1.6
  • 远程Webdriver上的Chrome(通过Grid)无法启动,建议使用x64 chromedriver并在参数中指定

阅读 597

收藏
2020-07-25

共1个答案

小编典典

请尝试将Protractor更新到最新的4.0.11,并将chrome驱动程序更新到2.25,因为已修复了2.24版本中报告的许多问题。

尝试一次,让我们知道。

2020-07-25