简体   繁体   English

Angular CLI ChromeHeadless karma仍然打开浏览器

[英]Angular cli ChromeHeadless karma still open a browser

I want to use ChromeHeadless with karma. 我想将ChromeHeadless与业力一起使用。 My config is: 我的配置是:

process.env.CHROME_BIN = require('puppeteer').executablePath();

module.exports = function( config ) {
  config.set({
    basePath                : '',
    frameworks              : ['jasmine', '@angular/cli'],
    plugins                 : [
      require('karma-jasmine'),
      require('karma-chrome-launcher'),
      require('@angular/cli/plugins/karma')
    ],
    angularCli              : {
      environment: 'dev'
    },
    reporters               : ['progress'],
    autoWatch               : false,
    browsers: [
      'ChromeHeadless',
    ],
    singleRun               : true
  });
};

When I run ng test I still need to open the browser. 当我运行ng test时,我仍然需要打开浏览器。 Here is what I'm getting from karma console: 这是我从业力控制台获得的信息:

Karma v2.0.0 server started at http://0.0.0.0:9876/ Karma v2.0.0服务器从http://0.0.0.0:9876/启动

Try to add this property to your karma.conf.js . 尝试将此属性添加到您的karma.conf.js Reference

customLaunchers: {
  ChromeHeadless: {
    base: 'Chrome',
    flags: [
      '--no-sandbox',
      '--headless',
      '--disable-gpu',
      '--remote-debugging-port=9222'
    ]
  }
}

如果您想将Puppeteer与Karma一起使用,则应该能够从plugins数组中删除karma-chrome-launcher ,因为Puppeteer应该自己处理所有事情,可能是插件导致了意外的行为!

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM