export function timer(fn) {
setTimeout(() => {
fn()
setTimeout(() => {
fn()
}, 3000)
}, 3000)
}
beforEach(() => {//避免多个测试用例相互之间的影响
jest.useFakeTimers()//
}
)
test('测试 timer', () => {
let mockFn = jest.fn()
timer(mockFn)
jest.runAllTimers()//运行所有的timer
//jest.runOnlyPendingTimers()// 运行当前队列里的所有timer
// jest.advanceTimersByTime(4000) 可以理解为提前三秒
expect(mockFn).toHaveBeenCalledTimes(1)
})
jest(timer)
最新推荐文章于 2023-01-10 15:11:26 发布