如何使用新的babel-plugin -__ coverage__向业力报告添加覆盖率报告

时间:2016-09-12 09:47:43

标签: javascript ecmascript-6 karma-runner code-coverage babeljs

我刚刚发现了名为babel-plugin-coverage的新babel插件。我试过但没有成功。

我遇到的问题是没有覆盖数据写入磁盘(甚至没有创建目录)。

所以,我的第一个问题:给定以下babel配置放在.babelrc

{
    "env": {
       "test": {
           "plugins": [ "__coverage__" ]
      }
   }
}

如何在我的karma.config中定位/定义此test环境?

在karma.conf.js的顶部写下以下内容也是有效的:

require("babel-plugin-__coverage__");

现在,这是我的karma.conf.js的片段

require("babel-plugin-__coverage__");
module.exports = function (config) {
    config.set({
        basePath: '../app/',
        frameworks: ['browserify', 'jasmine-jquery', 'jasmine'],
        files: [ .... ],
        preprocessors: {
           ....
           '../test/unit/app.js': ['browserify'],
           'components/common/module.js': ['browserify'],
           'components/services/module.js': ['browserify'],
           '../test/unit/components/**/*.spec.js': ['browserify'],
           'components/**/*.spec.js': ['browserify'],
           'components/**/*.fixtures.js': ['browserify']
        },
        browserify : {
           transform : ['babelify', 'stringify'],
           debug: true,
           paths: [ ... ]
        },
        reporters: [
            'progress',
            'coverage'
        ],

       coverageReporter: {
           type: 'html',
           dir: '../target/coverage'
       },
       ...

任何帮助都会受到赞赏吗?

1 个答案:

答案 0 :(得分:1)

设置环境以测试添加

process.env.NODE_ENV = 'test';

karma.conf.js

的顶部

您不需要require("babel-plugin-__coverage__")电话