发布于 2026-01-06 1 阅读
0

如何使用 Jest 模拟环境变量

如何使用 Jest 模拟环境变量

如果你使用 Jest 作为 Node.js 应用程序的可靠测试框架,你很可能会遇到这样的情况:你正在测试的代码使用了通过以下方式访问的环境变量process.env

最简单的方法是创建一个名为 `.env` 的文件setEnvVars.js,并在其中填充所需的环境变量,例如:

// .jest/setEnvVars.js
process.env.SOME_VAR = 'something';
process.env.SECRET = 'shh-do-not-tell-to-anyone';
// etc...
Enter fullscreen mode Exit fullscreen mode

我认为一个好的做法是将此文件放在一个.jest文件夹下,这样我们就知道该文件夹内的所有内容都与 Jest 相关。

为了更清楚地说明,你的文件结构应该类似于这样:

|-- .jest
|   `-- setEnvVars.js
|-- jest.config.js
|-- package-lock.json
|-- package.json
|-- server.js
Enter fullscreen mode Exit fullscreen mode

接下来需要设置的是更新你的程序jest.config.js,并告诉它使用该文件:

// jest.config.js
module.exports = {
  setupFiles: ['<rootDir>/.jest/setEnvVars.js'],
  // ... other configurations
};
Enter fullscreen mode Exit fullscreen mode

就这样!现在运行测试时,代码就可以访问这些模拟环境变量了。

文章来源:https://dev.to/darkmavis1980/how-to-mock-environmental-variables-with-jest-2j3c