我有一个表组件,我在其中添加了一个onClick
处理程序到所有的tr
。单击处理程序在浏览器中工作正常。当使用测试库编写测试时,我只能使用fireEvent
使其工作。当我尝试用userEvent
替换它时,单击处理程序没有被调用。我'我知道在tr
中添加click处理程序存在一些可访问性问题,但是我想了解为什么使用userEvent
时不触发它
render( <Table />)
const row = screen.queryAllByTitle('Show details')[0]
userEvent.click(row)
expect(screen.queryByText('Details')).toBeTruthy()
和行:
<tr
title="Show details"
onClick={showDetails}
role="button"
>
<td>....
</tr>
1条答案
按热度按时间r6l8ljro1#
userEvent
是异步的。如果要使用useEvent
,可以进行以下更改