【问题标题】:What don't I get about babel with istanbul?我对伊斯坦布尔的 babel 有什么误解?
【发布时间】:2016-12-15 15:33:49
【问题描述】:

我正在尝试将代码覆盖率添加到从 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 的各种组合以及各种包含指令的感觉,但我从来没有像报告覆盖率为 0% 的文件那样做到这一点,即使使用--include-all-sources。是什么赋予了?我错过了什么?

【问题讨论】:

    标签: node.js mocha.js babeljs istanbul


    【解决方案1】:

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

    您使用的包babel-istanbul 是一个插入式包,旨在用于替换 babel。

    【讨论】:

      猜你喜欢
      • 2016-04-05
      • 2016-11-16
      • 1970-01-01
      • 2023-03-11
      • 1970-01-01
      • 2020-01-24
      • 1970-01-01
      • 1970-01-01
      • 2016-11-13
      相关资源
      最近更新 更多