【发布时间】:2021-01-08 09:06:07
【问题描述】:
我目前正在学习 React-Testing-Library。
我想测试鼠标与元素的交互。目前我有点不清楚 userEvent.click(element) 和 fireEvent.click(element) 之间的区别。两者都被推荐使用,并且在下面的示例中它们被正确实现了吗?
const mockFunction = jest.fn(() => console.info('button clicked'));
const { getByTestId } = render(<MyAwesomeButton onClick={mockFunction} />);
const myAwesomeButton = getByTestId('my-awesome-button');
// Solution A
fireEvent(myAwesomeButton)
expect(mockFunction.toHaveBeenCalledTimes(1);
// Solution B
userEvent.click(myAwesomeButton);
expect(mockFunction).toHaveBeenCalledTimes(1);
提前感谢您的澄清。
【问题讨论】:
标签: javascript reactjs react-testing-library