我有几个无法在弹出菜单中单击某些内容的示例。 我使用与下面类似的代码,并且通过了该元素可见的断言,但是当它尝试单击已被确认为可见的元素时,出现以下错误:
该元素不可见,因为它的有效宽度和高度为:“ 0 x 0”像素。
以下是我正在编写的测试类型的示例:
cy.get('.example').eq(2).find('.item-in-list').contains('Example Text').should('be.visible').click();
should('be.visible')
断言如何通过,而单击失败却因为相同的元素“不可见”而如何呢?
答案 0 :(得分:1)
这些测试有时会通过,有时会失败。原来,API调用有时会在测试中间结束,并导致组件重新呈现,从而关闭了我试图单击的弹出菜单。我仍然对断言的传递方式和单击失败的发生率感到困惑(它是在我的断言通过之后且在单击之前50%的时间之前是否真的重新渲染了组件?),但确认了在运行我的测试之前完成该API调用似乎已经解决了我的问题。