3

我正在对使用 ES6 语法编写的 React 组件执行 mocha 测试。我正在使用伊斯坦布尔进行代码覆盖率测试。当我将我的设置NODE_ENV为“测试”时,我得到以下输出:

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

可以看出,它表示一切都是未知的。当我删除NODE_ENV变量时,它工作正常。我该怎么做才能在上述环境中运行此测试?

4

2 回答 2

3

过去两天我一直在尝试使用 babel、nyc 和 react 建立一个类似的环境,并遇到了类似的问题。你是如何设置 NODE_ENV 的?你在 Windows 上吗?

这就是我在 package.json 中的内容:

"test:c": "set NODE_ENV=test && npm run coverage"

执行此操作时,Windows 实际上将 NODE_ENV 设置为“test”而不是“test”。注意尾随空格。

我通过从脚本中删除空间来解决这个问题:

"test:c": "set NODE_ENV=test&& npm run coverage"
于 2017-06-07T10:17:59.240 回答
0

使用cross-envhttps://www.npmjs.com/package/cross-env

package.json

"test": "cross-env NODE_ENV=test nyc mocha --exit && npm run coverage"

于 2020-10-20T17:48:37.667 回答