我不会对伊斯坦布尔的巴贝尔有什么看法?

时间:2016-12-15 15:33:50

标签: node.js mocha babeljs istanbul

我试图将代码覆盖率添加到从ES2015转换而来的现有库中。我好像做得对。我的makefile读取

test: .FORCE
    export NODE_ENV=test
    babel *.js --out-dir lib
    nyc mocha

我的babelrc读取

{
  "presets": ["es2015"],
  "sourceMaps": true,
  "env": {
    "test": { "plugins": ["istanbul"] }
  }
}

虽然我的package.json包含

"nyc": {
  "include": [
    "**/*.js"
  ],
  "require": [
    "babel-register"
  ],
  "sourceMap": false,
  "instrument": false
}

然而,在我的测试运行之后,输出只是显示:

----------|----------|----------|----------|----------|----------------|
File      |  % Stmts | % Branch |  % Funcs |  % Lines |Uncovered Lines |
----------|----------|----------|----------|----------|----------------|
All files |  Unknown |  Unknown |  Unknown |  Unknown |                |
----------|----------|----------|----------|----------|----------------|

我已经尝试了babel-nodebabel-istanbulnyc的各种组合,以及各种包含指令,而且我从来没有这样做过。即使使用--include-all-sources,也可以报告覆盖率为0%的文件。是什么赋予了?我错过了什么?

1 个答案:

答案 0 :(得分:1)

您需要检测正在转换的代码。使用这个babel插件:https://github.com/istanbuljs/babel-plugin-istanbul

您使用babel-istanbul的套餐是一个用于替换巴贝尔的套餐。