我正在测试一个由多个框架组成的网站。即使没有元素更改,服务器也可以随时重新生成帧。如果这发生在

driver.findElement(By.id("11")).getText();


在findElement和getText之间,将引发StaleElementExcpetion。我当前的解决方案是重试多次。

for (int i = 0; i < 3; i++) {
    try {
        driver.findElement(By.id("11")).getText();

    } catch (StaleElementException e) {
        // retry
    }
}


这真的使代码blo肿,还有更好的解决方案吗?

最佳答案

编写一个函数,以使您的代码看起来不那么but肿,但我认为没有更好的方法来解决此问题。

此处的一篇不错的博客文章:StaleElementException

关于java - 使用Selenium处理刷新的WebElement,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45438778/

10-11 10:24