Jest 不加载环境变量(即使使用 --setupFiles dotenv/config )

All*_*uan 8 javascript node.js express jestjs dotenv

我正在为 Express 项目编写测试,但是当我运行测试脚本时,我的环境变量未加载。

在其他线程中,人们建议使用--setupFiles dotenv/config,我也这样做了,但不幸的是它不起作用。我尝试将其添加到我的测试脚本和文件中jest.config.js,但没有成功。有人对如何解决这个问题有任何提示吗?

语境

这就是我设置 jest 的方式package.json

"scripts": {
    "test": "jest --watchAll --setupFiles dotenv/config"
  },
"jest": {
    "testEnvironment": "node"
},
Run Code Online (Sandbox Code Playgroud)

在文件顶部app.js,我加载环境变量 require('dotenv').config();

这是我的文件夹结构:

项目的文件夹结构:一个源文件夹,其中包含多个文件夹,包括一个测试文件夹。 src 之外是 app.js、routes.js、.env、package.json 和其他一些文件

All*_*uan 2

.env通过将文件从src/文件夹移动到根文件夹来修复它。