Angular 5:Karma Unit测试未能在CI环境中启动HeadlessChrome

时间:2018-01-22 18:26:45

标签: angular jenkins openshift karma-runner karma-chrome-launcher

我们在CI环境中遇到问题(在Openshift的Docker构建窗格中的Jenkins)。

错误:无法使用pid调整渲染器的OOM分数261:权限被拒绝(13)

这里有一些额外的信息:

  • 基于Docker的构建pod基于CentOS
  • 运行
  • 使用--no-sandbox标志创建的CustomLauncher(见下文)
  • 我们无法以root身份运行pod
  • 错误发生间歇性。但大部分时间都失败了。就像10个工作中的一个工作一样。
  • 如果我们在本地执行测试,一切正常。

版本:

  • Angular version 5.1.0
  • Karma-chrome-launcher 2.1.1
  • Karma 1.70

[31m22 01 2018 13:05:37.019:ERROR [launcher]: [39mChrome stdout: [31m22 01 2018 13:05:37.019:ERROR [launcher]: [39mChrome stderr: DevTools listening on ws://127.0.0.1:9222/devtools/browser/c45b2629-938e-490e-a8af-706302677ea4 [0122/130522.747519:ERROR:zygote_host_impl_linux.cc(268)] Failed to adjust OOM score of renderer with pid 261: Permission denied (13) [0122/130533.563149:INFO:CONSOLE(8743)] "Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience. For more help, check https://xhr.spec.whatwg.org/.", source: http://localhost:9876/_karma_webpack_/polyfills.bundle.js (8743) [0122/130533.563271:ERROR:service_manager.cc(157)] Connection InterfaceProviderSpec prevented service: content_renderer from binding interface: blink::mojom::ReportingServiceProxy exposed by: content_browser

Karma.conf customLaunchers: { ChromeHeadlessNoSandbox: { base: 'ChromeHeadless', flags: [ '--no-sandbox', '--disable-setuid-sandbox', '--remote-debugging-port=9222', '--disable-gpu' ] } }

1 个答案:

答案 0 :(得分:0)

在我们将构建窗格的内存从1GB增加到2GB之后,现在一切顺利......