我正在使用Ember CLI,我正在尝试将代码覆盖率报告与与测试一起运行的内置Q单元测试集成在一起。我尝试使用伊斯坦布尔,但我无法让它找到要检测的文件,因为它似乎在tmp目录中查找。我试着在我的testem.json中这样做:
{
"framework": "qunit",
"serve_files": [
"instrumented/components/*.js"
],
"before_tests": "istanbul instrument --output instrumented/components app/components",
"after_tests": "istanbul report",
"test_page": "tests/index.html",
"launch_in_ci": ["PhantomJS"],
"launch_in_dev": ["PhantomJS", "Chrome"],
"reporter": "tap"
}
但是我一直收到这样的错误: not ok 1 Error - message:>
fs.js:684
return binding.stat(pathModule._makeLong(path));
^
Error: ENOENT, no such file or directory '/Users/Robert/ui/tmp/class-tests_dist-hqZLfsWS.tmp/app/components'
at Object.fs.statSync (fs.js:684:18)
at InstrumentCommand.Command.mix.run (/usr/local/lib/node_modules/istanbul/lib/command/instrument.js:230:20)
at runCommand (/usr/local/lib/node_modules/istanbul/lib/cli.js:58:19)
at runToCompletion (/usr/local/lib/node_modules/istanbul/lib/cli.js:62:5)
at Object.<anonymous> (/usr/local/lib/node_modules/istanbul/lib/cli.js:67:5)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
我也尝试过使用Karma,但我无法弄清楚配置。我也尝试过blanket,但这只是给了我一个错误的报告,100%覆盖了被转换的代码。
我不完全理解转换后的代码是如何工作的,我也不确定解决这个问题的最好方法是什么,但我绝对希望得到任何帮助,为我指出如何获得一个好的代码覆盖率报告的正确方向。
有没有人成功地集成了任何类型的代码覆盖报告?
发布于 2016-07-26 23:14:50
现在有了一个新的Ember插件,用于伊斯坦布尔的代码覆盖率。Ember-CLI-Blanket不再起作用。
你可以在这里找到新的插件:https://github.com/kategengler/ember-cli-code-coverage
发布于 2014-12-04 09:13:52
Steven Glanzer最近发布了一个名为ember-cli-blanket的ember cli插件,用于提供代码覆盖率。
https://stackoverflow.com/questions/24494839
复制相似问题