我正在使用ES6语法编写的React组件上执行mocha测试。我正在使用伊斯坦布尔进行代码覆盖测试。当我将NODE_ENV
设置为'test`时,我得到以下输出:
----------|----------|----------|----------|----------|----------------|
File | % Stmts | % Branch | % Funcs | % Lines |Uncovered Lines |
----------|----------|----------|----------|----------|----------------|
All files | Unknown | Unknown | Unknown | Unknown | |
----------|----------|----------|----------|----------|----------------|
可以看出,它对一切都不为人知。当我删除NODE_ENV
变量时,它可以正常工作。如何在上述环境中运行此测试?
答案 0 :(得分:3)
过去两天我一直在努力建立一个类似的环境,使用babel,nyc并做出反应并遇到类似的问题。 你是如何设置NODE_ENV的?你在Windows上吗?
这就是我在package.json中所拥有的:
"test:c": "set NODE_ENV=test && npm run coverage"
当执行此操作时,Windows实际上将NODE_ENV设置为" test"不是"测试"。 注意尾随空格。
我通过从脚本中删除空格来修复此问题:
"test:c": "set NODE_ENV=test&& npm run coverage"
答案 1 :(得分:0)
使用cross-env
(https://www.npmjs.com/package/cross-env)
在package.json
中:
"test": "cross-env NODE_ENV=test nyc mocha --exit && npm run coverage"