此错误是什么意思:陈旧元素引用:元素未附加到页面文档?

在我的C#应用​​程序中使用Selenium Web驱动程序时,出现以下错误:

OpenQA.Selenium.StaleElementReferenceException:陈旧元素引用:元素未附加到页面文档

在此代码中:

IWebElement e = driver.FindElement(By.XPath(link_click), 10);

e.Click();

错误行在中,e.Click()但这是在XPath之前指定的相同链接中成功执行但在最后一次尝试中失败的过程!那么这个错误是什么意思以及如何解决呢?

回答:

这意味着在页面中更改的元素或元素被删除,此链接中的完整参考http://www.seleniumhq.org/exceptions/stale_element_reference.jsp

解决此问题的一种方法是,您可以重试,可能类似于

bool staleElement = true; 

while(staleElement){

try{

driver.FindElement(By.XPath(link_click), 10).Click();

staleElement = false;

} catch(StaleElementReferenceException e){

staleElement = true;

}

}

以上是 此错误是什么意思:陈旧元素引用:元素未附加到页面文档? 的全部内容, 来源链接: utcz.com/qa/420029.html

回到顶部