gpt4 book ai didi

unit-testing - Jest 单元测试中的全局变量

转载 作者:行者123 更新时间:2023-12-03 00:12:25 44 4
gpt4 key购买 nike

我是 Jest 新手,正在尝试为我现有的 React 应用程序编写一些单元测试。我有一个全局变量window.CONFIG,它存储一些在应用程序中不同位置使用的配置。该变量在登陆 HTML 页面的脚本标签中初始化

现在我正在尝试编写一个依赖于这个 window.CONFIG 的辅助函数的测试,并且在访问时它总是未定义

这是代码:

config.js

export default window.CONFIG;

应用程序/helper.js

import config from "../config";

export default {
getCompanyURL(company) {
return config.baseUrl + "/companies/" + company.id;
},
}

_ 测试 _/helpers-test.js

jest.dontMock('../app/helpers.js');

var helper = require('../app/helpers.js').default;

describe('Get company URL', function() {

it('returns company url with company id appended', function() {
expect(companies.getCompanyURL({id: 1})).toBe('test_base_url/companies/1');
});
});
获取公司网址

config始终未定义。由于浏览器登录页面未加载,window.CONFIG 未初始化。如何在 Jest 的单元测试中模拟此 config 模块?

提前致谢!!

最佳答案

我不确定这是否对您有帮助,但您可以将全局变量直接放入 package.json

"jest":{
"globals": {
"config": {"foo":"bar"}
}
}

关于unit-testing - Jest 单元测试中的全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35450857/

44 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com