【发布时间】:2020-08-30 00:44:33
【问题描述】:
我正在对一个调用环境变量的函数进行测试,但结果未定义。 我尝试过但无效的解决方案:
1/ 在我的测试文件中添加require('dotenv').config({path:'../.env'})
2/ 在 package.json 中传递全局变量
"jest": {
"globals": {
"USER_ENDPOINT":"xxx",
"USER_KEY":"xxx"
}
}
3/ 在 package.json 中的 test 命令中传递我的变量
"test": "USER_ENDPOINT:xxx USER_KEY:xxx jest --watchAll --detectOpenHandles"
4/ 在我的测试文件的 beforeEach() 中添加了一个 Object.assign
beforeEach(() => {
process.env = Object.assign(process.env, {USER_ENDPOINT:"xxx", USER_KEY:"xxx" });
});
并收到错误“Jest 遇到了意外的令牌”
5/ 我在根目录下创建了一个 jest.config.js 文件
require('dotenv').config({path:'./.env'});
module.exports = {
globals: {
USER_ENDPOINT:"xxx",
USER_KEY:"xxx"
}
};
这里建议了大部分解决方案: https://github.com/vuejs/vue-test-utils/issues/193 但都没有成功
【问题讨论】: