我正在从Mocha迁移到Jest。我的测试导入'config'包,它根据NODE_ENV变量选择一个或另一个配置文件。但是,在从Jest
运行测试时,config看起来似乎找到了NODE_ENV变量下一行不起作用(即忽略NODE_ENV):
NODE_ENV=test jest test/*.js --notify --config jest.config.json
因此'config'包报告:
console.error node_modules/config/lib/config.js:1727
WARNING: NODE_ENV value of 'test' did not match any deployment config file names.
你知道怎么包括NODE_ENV吗?
答案 0 :(得分:0)
Jest会自动将环境变量NODE_ENV
定义为test
(请参见https://jestjs.io/docs/en/getting-started.html),您可以从错误消息中确认:
console.error node_modules/config/lib/config.js:1727
WARNING: NODE_ENV value of 'test' did not match any deployment config file names.
您可以做的就是简单地创建config / test.json并包含内容{}
,这是一个空的有效JSON对象。
请参见https://github.com/lorenwest/node-config/wiki/Strict-Mode
答案 1 :(得分:-1)
您可以将此添加到您的babel配置:
"env": {
"test": {
"presets": [["env"], ...<OTHER PRESETS>]
}
}
这也应该在运行NODE_ENV=test
时自动设置jest
。
此处有更多信息:Getting Started - Jest