我在我的项目中使用dotenv从.env文件中获取变量。我希望能够在运行npm test
时从package.json中的.env(dotenv)文件中设置一个值。与此类似:
"scripts": {
"test": "set ENV=test mocha './test/**/*.spec.js'",
"start": "node app"
}
我的.env文件就是这样:
ENV = development
我正在使用Windows。 预先感谢您的帮助!
答案 0 :(得分:1)
您可以使用
"test": "ENV=test mocha './test/**/*.spec.js'"
在Linux上的npm脚本中,并使用
"test": "set ENV=test&&mocha './test/**/*.spec.js'"
在Windows上。
顺便说一句,如果您需要跨平台,请使用cross-env,以便您的代码可以在Windows和Linux上运行。
您也可以使用require。
例如,您有一个./test/test.env.js
// test/test.env.js
process.env.ENV = 'test';
并在您的npm脚本中使用require
,如下所示:
"test": "mocha --require 'test/test.env.js' './test/**/*.spec.js'"
答案 1 :(得分:0)
是的,您也可以通过命令传递environment variables
。
即与您的脚本:-
"scripts": {
"test": "set ENV=test mocha './test/**/*.spec.js'",
"start": "ENV=test node app.js" //NOTICE I HAVE CHANGED THIS.
}
仅仅通过使用,我不知道如何帮助测试脚本,我也不明白,但是我相信它一定是这样的
"test": "ENV=test mocha './test/**/*.spec.js'"