gpt4 book ai didi

java - 有没有更好的方法来处理selenium中的StaleElementReferenceException?

转载 作者:行者123 更新时间:2023-12-02 11:18:15 26 4
gpt4 key购买 nike

我正在 TestNG(Java) 中运行一些 Selenium 自动化测试,我得到 org.openqa.selenium.StaleElementReferenceException: stale element reference: element is not attached to the page document这个错误。我正在尝试调试此问题,有人可以帮我在多个页面上解决此问题吗?我的测试有近 2000 行,我随机得到这个错误。我在代码中使用显式等待和 Thread.sleep。

谢谢

最佳答案

StaleElementException 发生,如果我们找到一个元素,并且 DOM 之后更新,我们会尝试与该元素交互。

如果 Javascript 在 findElement 调用和 click 调用之间更新页面,那么我们可能会收到 StaleElementException。这种情况在现代网页上发生并不罕见。然而,这种情况不会持续发生。这个错误发生的时机必须恰到好处。

代码您可以尝试一下!

public boolean retryingFindClick(By by) {
boolean result = false;
int attempts = 0;
while(attempts < 2) {
try {
driver.findElement(by).click();
result = true;
break;
} catch(StaleElementException e) {
}
attempts++;
}
return result;
}

如需更多引用,您可以查看此教程:Stale Element Refernce

关于java - 有没有更好的方法来处理selenium中的StaleElementReferenceException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50119798/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com