Angularjs singleRun=true时未创建karma覆盖率文件

Angularjs singleRun=true时未创建karma覆盖率文件,angularjs,karma-runner,karma-jasmine,karma-mocha,karma-coverage,Angularjs,Karma Runner,Karma Jasmine,Karma Mocha,Karma Coverage,我正在使用Karma来运行我的单元测试,现在我正在尝试将Karma覆盖率纳入我的过程中。 我正在使用PhantomJS运行singleRun:true的测试。每当我这样做的时候,我的代码覆盖率报告器似乎没有运行。如果我将singleRun设置为false,则会创建文件夹和文件 为什么业力覆盖工具没有运行 这是我的配置文件: module.exports = function (config) { config.set({ basePath: '', frameworks: [

我正在使用Karma来运行我的单元测试,现在我正在尝试将Karma覆盖率纳入我的过程中。 我正在使用PhantomJS运行singleRun:true的测试。每当我这样做的时候,我的代码覆盖率报告器似乎没有运行。如果我将singleRun设置为false,则会创建文件夹和文件

为什么业力覆盖工具没有运行

这是我的配置文件:

module.exports = function (config) {
  config.set({
    basePath: '',
    frameworks: ['mocha', 'requirejs', 'sinon-chai'],
    files: [
     { pattern: 'bower_components/angular/angular.js', included: false },
     { pattern: 'bower_components/jquery/dist/jquery.js', included: false },
     { pattern: 'bower_components/angular-mocks/angular-mocks.js', included: false },
     { pattern: '**/*.js', included: false },
     { pattern: 'KarmaTests/test-main.js', included: true },
     { pattern: 'KarmaTests/**/*Test*.js', included: false }
    ],

    preprocessors: {
        'KarmaTests/*/*.js': ['coverage']
    },

    reporters: ['progress', 'coverage'],

    coverageReporter: {
        type: 'html',
        dir: '_testCoverage/',
        file: 'cover.html'
    },

    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
        autoWatch: true,

        browsers: ['PhantomJS'],

        //files are created when false, are not when true
        singleRun: false
    });
};

预处理器旨在映射源文件,而不是测试文件。请执行以下操作:

将预处理器模式更改为:

    preprocessors: {
      '/**/*.js': ['coverage']
    },
并将JS文件添加到测试映射:

    { pattern: '**/*.js', included: true }
重新运行karma并查看结果

你在使用什么版本的业力?