【发布时间】:2020-08-30 03:52:03
【问题描述】:
dotenv 8.2 安装在我的nodejs 12.15 应用程序中。 .env 文件位于app_root/config/ 下,而应用程序的index.js 文件中需要dotenv:
require("dotenv").config(path: __dirname+"/config/.env");
应用程序的根子目录中的“node index.js”运行良好。但是,当在应用程序根npm test 下使用jest 25.0 进行测试时,数据库连接会引发错误,因为它调用process.env.DB_PASSWORD 以获得数据库密码并且什么都不返回。当 console.log process.env 在测试环境中时,我注意到自定义定义的变量完全丢失了。如何恢复测试环境中缺少的所有自定义变量?
【问题讨论】:
-
您的
index.js是否从您的测试代码中导入/需要? -
不,这是
package.json中的test脚本: "scripts": { "test": "cross-env NODE_ENV=test jest --testTimeout=10000 --watchAll --verbose " },