我刚刚发现了名为 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/