Javascript 摩卡咖啡和毯子,巴贝尔和LCOV记者

Javascript 摩卡咖啡和毯子,巴贝尔和LCOV记者,javascript,mocha.js,ecmascript-6,babeljs,blanket.js,Javascript,Mocha.js,Ecmascript 6,Babeljs,Blanket.js,你好 我的摩卡咖啡配置有问题。我有ES6代码,应该由Babel编译,然后我想得到这个ES6代码的覆盖范围(LCOV格式) 我解决这个问题的方法是使用摩卡,摩卡lcov reporter,巴贝尔和毛毯包装。代码结构为: -- src ----- ... -- test ----- spec -------- something.spec.js -------- ... ----- blanket.js 规范位于test/spec目录中(也匹配*.spec.js模式)和blanket.js是: r

你好

我的摩卡咖啡配置有问题。我有ES6代码,应该由Babel编译,然后我想得到这个ES6代码的覆盖范围(LCOV格式)

我解决这个问题的方法是使用
摩卡
摩卡lcov reporter
巴贝尔
毛毯
包装。代码结构为:

-- src
----- ...
-- test
----- spec
-------- something.spec.js
-------- ...
----- blanket.js
规范位于
test/spec
目录中(也匹配
*.spec.js
模式)和
blanket.js
是:

require('blanket')({
    pattern: require('path').join(__dirname, '..', 'src')
});
我准备的命令是:

./node_modules/.bin/mocha $(find test -name '*.spec.js') --recursive --compilers js:babel/register -r test/blanket -R mocha-lcov-reporter
因此,它应该为所有
*.spec.js
文件运行Mocha测试,由Babel编译并在之前启动
测试/blanket.js
文件

启动此命令后,我从
esprima.js
中得到
错误:第1行:意外保留字
错误。当我运行它而不需要测试/覆盖文件时,它运行起来没有问题,但ofc我没有覆盖范围


有人这样做过吗?你知道怎么做吗?

好的,问题已经解决了,但没有巴别塔(而是本地ES6);我用另一种方式做了。我使用了
伊斯坦布尔和谐
摩卡
套餐。那么命令是:

./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha -- $(find test -name '*.spec.js') -R spec -u exports

在这一点上,您甚至不需要
伊斯坦布尔和声
。有关更多信息,请参阅。