【发布时间】:2016-05-28 19:29:39
【问题描述】:
我是 Jest 的新手,正在尝试为我现有的 React 应用程序编写一些单元测试。我有一个全局变量window.CONFIG,它存储了一些在应用程序的不同位置使用的配置。该变量在登陆 HTML 页面的脚本标签中初始化
现在我正在尝试编写一个依赖于 window.CONFIG 的辅助函数的测试,并且在访问时它总是未定义
代码如下:
config.js
export default window.CONFIG;
app/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 for Get Company Url 始终未定义。由于未加载浏览器登录页面window.CONFIG 未初始化。如何在 Jest 的单元测试中模拟这个 config 模块?
提前致谢!!
【问题讨论】:
标签: unit-testing global-variables jestjs