我在npm的package.json中设置了几个脚本,例如
{
"scripts": {
"server:install": ". ./scripts/server-install.sh",
"server:start": ". ./scripts/server-start.sh",
"server:stop": ". ./scripts/server-stop.sh",
"test:e2e": "jest --collectCoverage false test/**/*"
}
}
在server-start.sh
中,我将在本地启动dynamoDB服务,并需要设置系统环境AWS_API_KEY
值。在npm run test:e2e
时,该值将用于测试用例。
但问题是我在AWS_API_KEY
中为server:start
设置的值无法在test:e2e
中使用。似乎server-start.sh中的变量集操作将不更改当前控制台/会话的系统变量。
我用Google搜索并尝试过:
"server:start": "AWS_API_KEY=dummy . ./scripts/server-start.sh"
或使用cross-env
"server:start": "cross-env-shell AWS_API_KEY=dummy && . ./scripts/server-start.sh"
都失败了。我能想到的唯一一个想法是将AWS_API_KEY写入〜/ .bash_profile。我不想这样做。
任何帮助将不胜感激。