javascript - 如何使用新的 babel-plugin-__coverage__ 将覆盖率报告添加到 karma

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

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

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

所以,我的第一个问题:给定以下 babel 配置,该配置位于 .babelrc

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

如何在 karma.config 中定位/定义此测试环境?

在 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'
       },
       ...

如有任何帮助,我们将不胜感激?

最佳答案

设置测试环境添加

process.env.NODE_ENV = 'test';

karma.conf.js 的顶部

您不需要 require("babel-plugin-__coverage__") 调用

关于javascript - 如何使用新的 babel-plugin-__coverage__ 将覆盖率报告添加到 karma,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39447566/

相关文章:

javascript - Window.open()不适用于谷歌浏览器

javascript - 表中的 Angular ng-repeat,添加额外的行

javascript - AJAX 加载后调用 Javascript 函数

javascript - typescript 类型检查

javascript - 我应该在 npm 上发布我的模块的源代码吗?

javascript - 如何测试 Angular 模块的配置功能?

javascript - 如何使用正则表达式匹配字符串<div><span>regular</span><span>表达式</span></div>

返回未定义而不是数字的 Javascript 函数

ruby-on-rails - karma + rails : File structure?

javascript - 无法将提供者注入(inject) Karma 测试