开玩笑地测试 window.location
Testing window.location in jest
我正在尝试通过玩笑来测试 window 功能。我有一个函数,它将查询参数附加到 url 并将页面重定向到另一个页面。代码的粗略片段如下:
var url = new URL(targetUrl);
if (typeof status !== undefined) {
// base encode status
url.searchParams.append("status", status);
window.location = url.toString();
我是开玩笑的新手,我在为此模拟模拟测试时遇到了一些困难,因此你能帮我解决这个问题吗?提前致谢。
我想出了一个模拟 windows.location 的方法。我附上了一个代码片段,这将对其他试图模拟它的人有所帮助。
beforeEach(() => {
delete window.location;
window.location = Object.assign(new URL("https://dickssportinggoods.com"))
});
it('mocks windows.location function', () => {
//call your function.
expect(global.window.location).toBe("https://yoururl.com/?status=SUCCESS");
});
我正在尝试通过玩笑来测试 window 功能。我有一个函数,它将查询参数附加到 url 并将页面重定向到另一个页面。代码的粗略片段如下:
var url = new URL(targetUrl);
if (typeof status !== undefined) {
// base encode status
url.searchParams.append("status", status);
window.location = url.toString();
我是开玩笑的新手,我在为此模拟模拟测试时遇到了一些困难,因此你能帮我解决这个问题吗?提前致谢。
我想出了一个模拟 windows.location 的方法。我附上了一个代码片段,这将对其他试图模拟它的人有所帮助。
beforeEach(() => {
delete window.location;
window.location = Object.assign(new URL("https://dickssportinggoods.com"))
});
it('mocks windows.location function', () => {
//call your function.
expect(global.window.location).toBe("https://yoururl.com/?status=SUCCESS");
});