使用@testinglibrary/user事件进行虚假点击



我想测试在react中单击链接时是否发生跟踪事件。然而,我确实得到了一个Error: Not implemented: navigation,作为点击链接时发生的事情的影响。我正在用jest和@testinglibrary/user事件进行测试。

我现在想要mock或stub,这样当userEvent被触发时就不会进行导航尝试,因为我只想看到跟踪事件的发生。我该怎么做?

userEvent.click(item);
expect(Ga.trackEvent).toHaveBeenCalledTimes(1);
expect(Ga.trackEvent).toHaveBeenCalledWith('myModal', 'open'); 

我认为您的测试实际上是在尝试使用window.location 进行导航

在尝试用户事件之前,您需要模拟一下

let assignMock = jest.fn();
delete window.location;
window.location = { assign: assignMock };
afterEach(() => {
assignMock.mockClear();
});

相关内容

  • 没有找到相关文章

最新更新