我有一个类似于以下Javascript设置:
function a()
{
// some logic...
b();
};
function b()
{
window.location = "anotherPage"
};
在我的Jasmine测试中,我想要测试
a()
,但是我不希望发生重定向。我尝试了:
spyOn(instance, 'b').andCallFake(function() { });
但仍然会导致重定向。可能是因为a()
调用了b()
而不是Jasmine调用b()
。
b()
函数似乎只是在作用域中可访问,所以a()
可以调用它。但是spyOn
允许您存根分配给某个对象的函数。您能否提供有关您的代码的更多信息? - zbynour