我注意到,如果有多个点击触发器,我需要延迟点击触发器才能通过测试。我不知道出了什么问题,因为用手单击时按钮的反应符合我的要求。然后我注意到唯一失败的测试是在测试设置中多次单击的测试,例如:
someButtonWrapper.trigger('click')
someButtonWrapper.trigger('click')
如果我只是延迟后续点击,它会起作用:
await wait(() => someButtonWrapper.trigger('click'), 0);
我的问题是:
您知道为什么多个事件在手动和测试中的工作方式不同吗? 谢谢。
trigger
返回一个承诺,以便您的测试可以在完成点击之前完成。尝试在每个常规触发器之前添加等待。
await someButtonWrapper.trigger('click')
await someButtonWrapper.trigger('click')