gpt4 book ai didi

java - Selenium WebDriver - 使用 click() 时出现 StaleElementReferenceException

转载 作者:行者123 更新时间:2023-11-30 09:12:21 26 4
gpt4 key购买 nike

有时当我执行这样的代码时:

webDriver.findElement(By.xpath("//*[@class='classname']")).click();

我得到这个异常:org.openqa.selenium.StaleElementReferenceException:元素不再附加到 DOM我知道我可以重试,但有谁知道为什么会发生这种情况以及我该如何防止这种情况?

最佳答案

我遇到了同样的问题。

我的解决方案是:

webDriver.clickOnStableElement(By.xpath("//*[@class='classname']"));
...
public void clickOnStableElement(final By locator) {
WebElement e = new WebDriverWait(driver, 10).until(new ExpectedCondition<WebElement>(){
public WebElement apply(WebDriver d) {
try {
return d.findElement(locator);
} catch (StaleElementReferenceException ex) {
return null;
}
}
});
e.click();
}

希望对您有所帮助。 ;)

关于java - Selenium WebDriver - 使用 click() 时出现 StaleElementReferenceException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21606391/

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