我有一个页面,其中有一个“状态”字段,其值为“进行中”。现在,在某些操作(单击按钮)上,状态更改为已完成。我需要使用 Selenium 进行检查。
getVisibleElement(By.id("status")).getText()
现在的问题是,一旦单击按钮,状态不会立即从 In Progress 更改为 Completed。它在几秒钟内收到 AJAX 响应后发生。当我的代码尝试断言状态文本时,它实际上获得了过时的值 In Progress ,因此它没有通过测试。
再次请记住,即使 getVisibleElement() 定义了超时,它在这里对我没有帮助,因为该元素无论如何都存在。它只是在 AJAX 请求(发布按钮单击)时再次呈现。
我该如何解决?可以在断言之前添加一个固定的延迟工作。如果是,我该如何在硒中做到这一点?