2017-05-09 15 views
3

我曾經有過在茉莉spyOn().and.callFake,它有助於在我的測試了很多,現在我使用的玩笑,我在doc發現,jest.spyOn()存在,但不callFake替代spyOn()。and.callfake在Jestjs

我的問題:如何監視一個方法並用Jest和expect調用Fake?

回答

2

Documenation page給出了一個偉大的答案:

注意:默認情況下,jest.spyOn又稱窺探方法。這與大多數其他測試庫的行爲不同。如果想要 覆蓋原始函數,可以使用jest.spyOn(object, methodName).mockImplementation((=> customImplementation)或 object [methodName] = jest.fn((()=> customImplementation);

所以在你的情況只是通過一個虛假的方法customImplementation

+0

是的,這是,但最好使用'jest.fn()。mockImplementation(()=>東西)'而不是spyon – JSK