硒总是给人陈旧的元素

时间:2016-10-04 14:08:56

标签: java selenium exception

我一直在用 wait.until(ExpectedConditions.presenceOfElementLocated(By.id("some_id_here")));

wait.until(ExpectedConditions.elementToBeClickable(By.id("some_id_here")));

尝试避免StaleElementReferenceExceptions,但它们会不断被抛出。

我相信页面正在刷新这些元素,但我调用这些元素的方式是这样的:

public static WebElement login_btn(WebDriver driver, WebDriverWait wait) {
        wait.until(ExpectedConditions.presenceOfElementLocated(By.id("btnEntrar")));
        wait.until(ExpectedConditions.elementToBeClickable(By.id("btnEntrar")));
        element = driver.findElement(By.id("btnEntrar"));
        return element;
}

然后返回元素并使用它,所以理论上它应该在每次使用时搜索元素。

这也可能是导致此异常被抛出的原因,还有其他避免它们的方法吗?

0 个答案:

没有答案