gpt4 book ai didi

javascript - 我们如何在 Jasmine 中以编程方式清除 spy ?

转载 作者:IT王子 更新时间:2023-10-29 02:50:02 25 4
gpt4 key购买 nike

我们如何以编程方式清除 Jasmine 测试套件中的 spy ?谢谢。

beforeEach(function() {
spyOn($, "ajax").andCallFake(function(params){
})
})

it("should do something", function() {
//I want to override the spy on ajax here and do it a little differently
})

最佳答案

isSpy 设置为 false 是一个非常糟糕的主意,因为那时你会监视一个 spy ,当 Jasmine 在你的规范结束时清除 spy 时,你不会获取原始方法。该方法将等于第一个 spy 。

如果已经在监视一个方法并且您希望调用原始方法而不是您应该调用 andCallThrough() 这将覆盖第一个 spy 行为。

例如

var spyObj = spyOn(obj,'methodName').andReturn(true);
spyObj.andCallThrough();

您可以通过调用 this.removeAllSpies() 清除所有 spy (this - 规范)

关于javascript - 我们如何在 Jasmine 中以编程方式清除 spy ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8885591/

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