开玩笑:jest.fn() 和 jest.fn().mockImplementation() 之间有什么区别

ham*_*obi 5 javascript testing ecmascript-6 jestjs

jest.fn(() => 'something')
jest.fn().mockImplementation(() => 'something')
Run Code Online (Sandbox Code Playgroud)

这些有什么区别吗?有点困惑。

Cer*_*nce 8

没有区别。来自文档

\n
\n

mockFn.mockImplementation(fn)

\n

接受应该用作模拟实现的函数。模拟本身仍然会记录所有进入 \xe2\x80\x93 的调用和来自自身的实例,唯一的区别是,当调用模拟时,也会执行该实现。

\n

注意:jest.fn(implementation)是 的简写jest.fn().mockImplementation(implementation)

\n
\n