[WebDriver]解决报错:element is not attached to the page document

报错关键信息:

stale element reference
element is not attached to the page document

官方文档说明:

https://www.seleniumhq.org/exceptions/stale_element_reference.jsp
官方认为报错的原因有2种:
The element has been deleted entirely.
The element is no longer attached to the DOM.
总结下就是元素找不到了。

修改要点:

获取元素对象和元素操作2个步骤之间:
1.不要有很长的等待时间(长时间意味着有可能会有意外的页面刷新和弹窗)。
2.不要有其他的元素操作(比如点击关闭弹窗、浮层等)

WebElement goChooseShiftBt = browser.findElement(By.xpath(goChooseShift));
//  ..... 中间省略了100行代码
goChooseShiftBt.click();

改为

WebElement goChooseShiftBt = browser.findElement(By.xpath(goChooseShift));
goChooseShiftBt.click();
//  ..... 中间省略的100行代码

修改后问题解决。

你可能感兴趣的:([WebDriver]解决报错:element is not attached to the page document)