茉莉花的spyOn toHaveBeenCalled方法的问题
-
29-10-2019 - |
题
谁能告诉我以下测试失败的原因。 通用标签
我从此处取了它,他说这行得通。我可以看到spyOn方法在人员对象上创建了一个同名的包装函数,即在对象而不是原型上调用了fakePerson.sayHello。
非常感谢
解决方案
测试失败,因为我也使用了jasmine-sinon.js。
其他提示
测试用例的一个可能问题是您尚未指定应调用原始方法。以下是正确的行为(请注意“ andCallThrough”): 通用标签
有关其他可能性的更多信息,请参见Jasmine的文档页面: https:// github.com/pivotal/jasmine/wiki/Spies
编辑:快速浏览茉莉香囊文档会显示以下内容: >
警告
jasmine-sinon当前会覆盖任何用于自己的间谍功能的同名Jasmine匹配器。我计划允许将来保留这些内容。
被覆盖的本地茉莉花匹配项是:
toHaveBeenCalled()toHaveBeenCalledWith()
如果要使用茉莉花-西宁,则必须使用其API,而不要使用Jasmine的API。
编辑:自 2012年2月:您还可以将茉莉花间谍物与锡农人间谍物一起使用。 jasmine-sinon会检测到您正在使用哪个,并使用适当的匹配器。
不隶属于 StackOverflow