我正在学习在AngularJS中实现karma
和Jasmine
,并通过一些示例来更好地理解它。
我对callThrough
有点困惑。
如果我误解了它,请纠正我,它有点类似于callFake()
,但实际上我们并未调用该函数。在callFake()
中,我们还提供了具有返回类型的函数,但在callThrough
中未提供。
从 Jasmine 文档:
请对此有所说明。
更新:
经过努力,我意识到一篇文章值得分享。 Here is a Medium article to anyone who stumbles across this question
最佳答案
您的理解很好:
spy :和通过调用
spy :and.callFake
加号:添加callThrough时的。您不仅在跟踪 spy 的调用。您还调用该方法进行测试。实际上,这里的方法被调用。在callFake上,您只能通过检查参数来测试是否正确调用了它。真正的方法没有被调用。自从它被称为fake call
以来就引起了人们的关注