相关疑难解决方法(0)

228
推荐指数
16
解决办法
39万
查看次数

Selenium - 如何等待页面完全加载

我正在尝试使用Java和Selenium WebDriver自动化一些测试用例.我有以下场景:

  • 有一个名为"产品"的页面.当我点击"产品"页面中的"查看详细信息"链接时,会出现一个包含该项目详细信息的弹出窗口(模式对话框).
  • 当我点击弹出窗口中的"关闭"按钮时,弹出窗口关闭,页面自动刷新(页面刚刚重新加载,内容保持不变).
  • 关闭弹出窗口后,我需要点击同一页面中的"添加项目"按钮.但是当WebDriver试图找到"添加项目"按钮时,如果互联网速度太快,WebDriver可以找到并单击该元素.

  • 但是如果互联网很慢,WebDriver会在页面刷新之前找到按钮,但只要WebDriver单击该按钮,页面就会刷新并StaleElementReferenceException发生.

  • 即使使用了不同的等待,所有等待条件也变为真(因为重新加载之前和之后页面中的内容相同),甚至在页面重新加载和StaleElementReferenceException 发生之前.

如果Thread.sleep(3000);在单击"添加项目"按钮之前使用测试用例,则工作正常.这个问题还有其他解决方法吗?

java selenium-webdriver

62
推荐指数
3
解决办法
20万
查看次数

标签 统计

java ×2

selenium-webdriver ×2

selenium ×1

webdriver ×1