我正在使用Java实现许多Selenium测试。有时,我的测试由于导致失败StaleElementReferenceException。你能否提出一些使测试更稳定的方法?
StaleElementReferenceException
如果页面上发生的DOM操作暂时导致该元素不可访问,则会发生这种情况。为了允许这些情况,您可以尝试在最终引发异常之前循环访问几次元素。
试试darrelgrainger.blogspot.com的出色解决方案:
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; }