我对单元测试还是陌生的,并且不易理解我如何测试/模拟来自路由器的推送,
<Tab label="Members" alt="Members" onClick={() => Router.push('/members')}/>
以上一行是我需要测试的,但是我该怎么办?我会创建一个伪造的终点,然后测试onClick吗?
答案 0 :(得分:1)
最简单的方法是像这样模拟路由器
import Router from 'next/router'
jest.mock('next/router', ()=> ({push: jest.fn()}))
模拟Tab
的点击之后,您可以像这样检查通话
expect(Router.push).toHaveBeenCalledWith('/members')