karma测试套件从Chrome中清空

时间:2017-01-24 10:09:16

标签: unit-testing google-chrome karma-runner karma-jasmine angular-cli

我在项目中设置单元测试时遇到问题。当我用IE运行测试一切正常我可以看到执行4/4测试。随着chrome我得到错误空测试套件。 Chrome已启动,但它看起来似乎可以;找不到测试和Chrome测试。

Karma.config.js

    module.exports = function (config) {
  config.set({
    basePath: '',
    frameworks: ['jasmine', 'angular-cli'],
    plugins: [
      require('karma-jasmine'),
      require('karma-chrome-launcher'),
      require('karma-ie-launcher'),
      require('karma-remap-istanbul'),
      require('angular-cli/plugins/karma')
    ],
    files: [
      { pattern: './src/test.ts', watched: false }
    ],
    preprocessors: {
      './src/test.ts': ['angular-cli']
    },
    remapIstanbulReporter: {
      reports: {
        html: 'coverage',
        lcovonly: './coverage/coverage.lcov'
      }
    },
    angularCli: {
      config: './angular-cli.json',
      environment: 'dev'
    },
    reporters: ['progress', 'karma-remap-istanbul'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['Chrome'],
    singleRun: true
  });
};

test.ts只是在app文件夹中搜索单元测试:

 .then(() => require.context('./', true, /\.spec\.ts/))

1 个答案:

答案 0 :(得分:0)

我发现问题出在记者部分,经过2天的痛苦后我将文件更改为

      reporters: config.angularCli && config.angularCli.codeCoverage
        ? ['progress', 'karma-remap-istanbul']
        : ['progress'],

删除了mime部分,它有效!