Angular Karma - Chrome have not captured in 60000 ms

给Google带偏了,各种改config各种试,花了大半天,给大家提供个思路。

这个错的root cause是Chrome启动不了。

为什么启动不了?
首先看下Chrome存不存在正不正常能不能启动!
Command line试一下。

我的情况是本机可以,运维机器不行,缺少相应权限,却又悲剧地默认运维机器的Chrome没问题!所以总以为问题出在其他地方!

开Debug可以看到Chrome启动的command line。首先检查下路径对不对。

20-Mar-2019 01:32:56  20 03 2019 01:32:56.381:INFO [karma]: Karma v1.7.1 server started at http://0.0.0.0:9876/ 
20-Mar-2019 01:32:56  20 03 2019 01:32:56.381:INFO [launcher]: Launching browser ChromeHeadless with unlimited concurrency 
20-Mar-2019 01:32:56  20 03 2019 01:32:56.491:INFO [launcher]: Starting browser ChromeHeadless 
20-Mar-2019 01:32:56  20 03 2019 01:32:56.492:DEBUG [temp-dir]: Creating temp dir at C:\Windows\TEMP\karma-98458715 
20-Mar-2019 01:32:56  20 03 2019 01:32:56.493:DEBUG [launcher]: C:\Program Files (x86)\Google\Chrome\Application\chrome.exe --user-data-dir=C:\Windows\TEMP\karma-98458715 --no-default-browser-check --no-first-run --disable-default-apps --disable-popup-blocking --disable-translate --disable-background-timer-throttling --disable-renderer-backgrounding --disable-device-discovery-notifications http://localhost:9876/?id=98458715 --headless --disable-gpu --remote-debugging-port=9222 
20-Mar-2019 01:34:56  20 03 2019 01:34:56.511:WARN [launcher]: ChromeHeadless have not captured in 120000 ms, killing. 
20-Mar-2019 01:34:58  20 03 2019 01:34:58.526:WARN [launcher]: ChromeHeadless was not killed in 2000 ms, sending SIGKILL. 
20-Mar-2019 01:35:00  20 03 2019 01:35:00.542:WARN [launcher]: ChromeHeadless was not killed by SIGKILL in 2000 ms, continuing. 
20-Mar-2019 01:35:00  20 03 2019 01:35:00.542:DEBUG [launcher]: Process ChromeHeadless exited with code -1 
20-Mar-2019 01:35:00  20 03 2019 01:35:00.543:DEBUG [temp-dir]: Cleaning temp dir C:\Windows\TEMP\karma-98458715 
20-Mar-2019 01:35:00  20 03 2019 01:35:00.547:DEBUG [launcher]: ChromeHeadless failed (timeout). Not restarting. 
20-Mar-2019 01:35:00  20 03 2019 01:35:00.550:DEBUG [karma]: Run complete, exiting. 
20-Mar-2019 01:35:00  20 03 2019 01:35:00.551:DEBUG [launcher]: Disconnecting all browsers 
20-Mar-2019 01:35:00  npm ERR! Test failed.  See above for more details. 

Debug这样开。

karma.conf.js

logLevel: config.LOG_DEBUG,

可以这样加大启动时间:captureTimeout:120000(default 60000)。

另外,browsers: ['Chrome']browsers: ['ChromeHeadless']的区别是:ChromeHeadless是无弹窗模式。

自定义Browser,要注意自定义的名称是否对应(ChromeHeadless_test)。

browsers: ['ChromeHeadless_test'],
    customLaunchers: {
      ChromeHeadless_test: {
        base: 'ChromeHeadless',
        flags: [
          '--disable-extensions', 
          '--no-sandbox', 
          '--disable-web-security', 
          '--no-proxy-server']
      }
    },

实际测试中剪掉一些feature会快两三秒,如非必要还是用默认就好,不喜弹窗可用browsers: ['ChromeHeadless']

其他问题可以直接看launcher源代码,可能还快过Google,比较简单。

https://github.com/karma-runner/karma-chrome-launcher

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值