使用jasmine进行窗口位置搜索的Angular 7模拟和返回值

问题描述 投票:0回答:1

使用Jasmine对角度7进行单元测试。我需要在Jasmine中设置window.location.search值。

我尝试了以下方案。

window.location.search = '?param=part1' 
// It's not working. Browser reloaded or disconnected the unit test cases.

spyOnProperty(window.location, 'search').and.returnValue('?param=part1');
// Disconnected the unit test cases.

如何设置window.location.search值?

javascript angular jasmine karma-jasmine spyon
1个回答
0
投票

我现在无法测试它,但您可以使用其accesstype方法模拟window.location对象。

jasmine documentation之后,他们建议您按以下方式实现模拟:

spyOnProperty(obj, propertyName, accessTypeopt)

因此,在您的情况下,它将是:

spyOnProperty(window.location, 'search', 'get').and.returnValue('?param=part1')
© www.soinside.com 2019 - 2024. All rights reserved.