多次点击触发之间需要等待

问题描述 投票:0回答:1

我注意到,如果有多个点击触发器,我需要延迟点击触发器才能通过测试。我不知道出了什么问题,因为用手单击时按钮的反应符合我的要求。然后我注意到唯一失败的测试是在测试设置中多次单击的测试,例如:

someButtonWrapper.trigger('click')
someButtonWrapper.trigger('click')

如果我只是延迟后续点击,它会起作用:

await wait(() => someButtonWrapper.trigger('click'), 0);

我的问题是:

  1. 真丑
  2. 我无法更改测试,所以我需要它在没有这个 hack 的情况下通过。

您知道为什么多个事件在手动和测试中的工作方式不同吗? 谢谢。

vuejs2 vue-test-utils
1个回答
0
投票

trigger
返回一个承诺,以便您的测试可以在完成点击之前完成。尝试在每个常规触发器之前添加等待。

await someButtonWrapper.trigger('click')
await someButtonWrapper.trigger('click')
© www.soinside.com 2019 - 2024. All rights reserved.