【问题标题】:ng test not working karma not able to start " ChromeHeadless was not killed in 2000 ms, sending SIGKILL."ng 测试不工作 业力无法启动“ChromeHeadless 在 2000 毫秒内没有被杀死,发送 SIGKILL。”
【发布时间】:2020-07-18 12:06:33
【问题描述】:

由于未知原因,我无法开始角度测试。它无休止地说,“Chrome 在 60000 毫秒内没有捕获,正在杀死,ChromeHeadless 在 200 毫秒内没有被 SIGKILL 杀死,继续”。

我不知道是什么问题?我身边缺少什么? 附上这个截图。

下面是 karma.conf.js

  //Karma configuration file, see link for more information
 //https://karma-runner.github.io/1.0/config/configuration-file.html

const { join } = require('path');
  const getBaseKarmaConfig = require('../../karma.conf');

  module.exports = function(config) {
     const baseConfig = getBaseKarmaConfig();
     config.set({
    ...baseConfig,
    coverageIstanbulReporter: {
      ...baseConfig.coverageIstanbulReporter,
      dir: join(__dirname, '../../coverage/apps/login/')
    }
  });
};

and complete karma.conf.js is :

    // Karma configuration file, see link for more information
// https://karma-runner.github.io/1.0/config/configuration-file.html

const { join } = require('path');
const { constants } = require('karma');

module.exports = () => {
    return {
        basePath: process.cwd() + '/apps/login',
        frameworks: ['jasmine', '@angular-devkit/build-angular'],
        plugins: [
            require('karma-jasmine'),
            require('karma-chrome-launcher'),
            require('karma-junit-reporter'),
            require('karma-jasmine-html-reporter'),
            require('karma-coverage-istanbul-reporter'),
            require('karma-spec-reporter'),
            require('@angular-devkit/build-angular/plugins/karma')
        ],
        proxies : {
            '/assets/': 'assets/'
        },
        client: {
            clearContext: false // leave Jasmine Spec Runner output visible in browser
        },
        coverageIstanbulReporter: {
            dir: join(__dirname, '../../coverage'),
            reports: ['html', 'lcovonly', 'text-summary'],
            fixWebpackSourcePaths: true,
            emitWarning: true,
            thresholds: {
                statements: 80,
                lines: 80,
                branches: 0,
                functions: 70
            }
        },
        reporters: ['spec', 'junit', 'kjhtml'],
        junitReporter: { outputFile: 'TEST-results.xml' },
        port: 9876,
        colors: true,
        logLevel: constants.LOG_INFO,
        autoWatch: false,
        browsers: ['ChromeHeadless'],
        singleRun: true,
        browserDisconnectTimeout: 10000,
        files: [
            { pattern: 'src/assets/img/*.png', watched: false, included:false, nocache:false, served:true },
            { pattern: 'src/assets/img/*.svg', watched: false, included:false, nocache:false, served:true },
            { pattern: 'src/assets/*.json', watched: false, included:false, nocache:false, served:true }
        ]
    };
};

【问题讨论】:

  • 我意识到它会在其他路径上找到“Chrome.exe”二进制文件,而不是它实际放置的位置。任何机构都可以指出我如何指挥,以便它指出正确的位置。有人如何在 karma.config.js 设置启动器

标签: angular karma-runner google-chrome-headless angular-test


【解决方案1】:

您是否使用 puppeteer 安装 ChromeHeadless?尝试指定可执行文件的路径,看看是否能让 ChromeHeadless 正常启动。

这是一个示例 karma.conf.js:

module.exports = function (config) {
  const puppeteer = require('puppeteer');
  process.env.CHROME_BIN = puppeteer.executablePath();

  config.set({
    basePath: '',
    frameworks: ['jasmine', '@angular-devkit/build-angular'],
    plugins: [
      require('karma-jasmine'),
      require('karma-chrome-launcher'),
      require('karma-jasmine-html-reporter'),
      require('karma-coverage-istanbul-reporter'),
      require('@angular-devkit/build-angular/plugins/karma')
    ],
    client: {
      clearContext: false // leave Jasmine Spec Runner output visible in browser
    },
    coverageIstanbulReporter: {
      reports: ['html', 'lcovonly', 'text-summary'],
      fixWebpackSourcePaths: true
    },
    reporters: ['progress', 'kjhtml'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['Chrome', 'ChromeHeadless'],
    singleRun: true,
    restartOnFileChange: true
  });
};

【讨论】:

    猜你喜欢
    • 2021-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-12
    • 1970-01-01
    • 2014-07-13
    • 1970-01-01
    相关资源
    最近更新 更多