首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用jest测试`process.env`应用程序时访问nuxt.js属性

使用jest测试`process.env`应用程序时访问nuxt.js属性
EN

Stack Overflow用户
提问于 2019-03-01 14:01:30
回答 2查看 1.4K关注 0票数 4

我想用Jest为我的Nuxt.js应用程序编写单元测试。但是,我的一些组件使用在process.env文件中声明的nuxt.config.js属性。当我运行测试时,我收到了以下错误:

测试文件示例:

代码语言:javascript
复制
import Config from "../nuxt.config"
import { mount } from "@vue/test-utils"
import CleanMapButton from "../components/UI/buttons/CleanMapButton.vue"

beforeAll(() => {
  process.env = Config.env
})

describe("Clean map button tests", () => {
  it ('Always true test', () => {
    expect(true).toBe(true)
  })
})
EN

回答 2

Stack Overflow用户

发布于 2019-03-02 04:12:30

进口货物悬挂,因此import语句都在beforeAll中设置process.env之前运行。

如果import-ed模块需要全局变量集,那么必须在测试开始运行之前设置它,方法是在安装模块中设置它,并配置Jest以使用类似于setupFilesAfterEnv的方法运行该安装模块。

另一方面,调用require在需要的时候运行代码,因此可以选择在beforeAll设置process.env之后重构您的测试代码来调用process.env

票数 2
EN

Stack Overflow用户

发布于 2019-03-01 14:50:59

您可以在beforeAll中设置它们

代码语言:javascript
复制
beforeAll(() => {
  process.env = Object.assign(process.env, { get_settings: 'get_settings' });
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54946221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档