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

时间:2018-04-23 03:06:11

标签: javascript unit-testing continuous-integration jest

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

my_test_script.sh

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

然而,在" my.test.js"当我像这样运行我的测试时,IMPORTANT_ENV_VAR没有设置。

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

3 个答案:

答案 0 :(得分:0)

糟糕!
不是Jest问题,我只需要在shell脚本中 export

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

答案 1 :(得分:0)

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

答案 2 :(得分:-2)

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

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