Javascript 如何将环境变量发送到Jest CLI?

Javascript 如何将环境变量发送到Jest CLI?,javascript,unit-testing,continuous-integration,jestjs,Javascript,Unit Testing,Continuous Integration,Jestjs,我有一个脚本可以为我运行Jest测试,我想在运行它之前设置一个环境变量,如下所示: 我的测试脚本.sh IMPORTANT_ENV_VAR=value_that_matters ./node_modules/.bin/jest --useStderr ./__tests__/my.test.js 但是,在“my.test.js”中,当我像这样运行测试时,没有设置重要的\u ENV\u VAR 如何将环境变量传递到Jest CLI?哇 这不是开玩笑的问题,我只需要在shell脚本中导出: exp

我有一个脚本可以为我运行Jest测试,我想在运行它之前设置一个环境变量,如下所示:

我的测试脚本.sh

IMPORTANT_ENV_VAR=value_that_matters
./node_modules/.bin/jest --useStderr ./__tests__/my.test.js
但是,在“my.test.js”中,当我像这样运行测试时,没有设置
重要的\u ENV\u VAR

如何将环境变量传递到Jest CLI?


这不是开玩笑的问题,我只需要在shell脚本中导出:

export IMPORTANT_ENV_VAR=value_that_matters
./node_modules/.bin/jest --useStderr ./__tests__/my.test.js

如果您使用的是npm,则可以将其添加到package.json中,以在测试环境中定义环境变量

"jest": {
  "globals": {
    "ENVVAR1": true,
    "ENVVAR2": "value"
  }
}

因为很难在npm/package.json下以独立于平台的方式设置环境变量,而且因为jest--setupFiles在使用过程中不在文档中并且似乎不起作用(24.9),jest确实需要--envVar选项来支持package.json外部的环境覆盖(如dev/production).

这是用于设置全局变量,而不是环境变量。