如何通过 Java 使用 Selenium WebDriver 等到所有加载程序消失
How to wait until all loaders disappears using Selenium WebDriver through Java
我正在使用 selenium 网络驱动程序,我需要等到所有加载程序都消失。我在仪表板页面上有 12 个小部件,我需要等到所有小部件都加载完毕。加载程序显示在每个小部件上。我使用了以下两种方法,但没有任何效果,也没有错误,它只是传递到下一个语句。
new WebDriverWait(driver,60)
.until(ExpectedConditions.invisibilityOfElementLocated(By.xpath("//div[contains(text(),'Loader')]")));
WebDriverWait wait2 = new WebDriverWait(driver,60);
wait2.until(ExpectedConditions.invisibilityOfElementLocated(By.cssSelector("div.loader")));
因为您在仪表板页面上总共有 12 个小部件,您需要等到所有小部件都加载完毕,所以您必须为 invisibilityOfAllElements()
and you can use either of the following 引入 WebDriverWait:
cssSelector:
new WebDriverWait(driver, 20).until(ExpectedConditions.invisibilityOfAllElements(driver.findElements(By.cssSelector("div.loader"))));
xpath:
new WebDriverWait(driver, 20).until(ExpectedConditions.invisibilityOfAllElements(driver.findElements(By.xpath("//div[@class='loader']"))));
我正在使用 selenium 网络驱动程序,我需要等到所有加载程序都消失。我在仪表板页面上有 12 个小部件,我需要等到所有小部件都加载完毕。加载程序显示在每个小部件上。我使用了以下两种方法,但没有任何效果,也没有错误,它只是传递到下一个语句。
new WebDriverWait(driver,60)
.until(ExpectedConditions.invisibilityOfElementLocated(By.xpath("//div[contains(text(),'Loader')]")));
WebDriverWait wait2 = new WebDriverWait(driver,60);
wait2.until(ExpectedConditions.invisibilityOfElementLocated(By.cssSelector("div.loader")));
因为您在仪表板页面上总共有 12 个小部件,您需要等到所有小部件都加载完毕,所以您必须为 invisibilityOfAllElements()
and you can use either of the following
cssSelector:
new WebDriverWait(driver, 20).until(ExpectedConditions.invisibilityOfAllElements(driver.findElements(By.cssSelector("div.loader"))));
xpath:
new WebDriverWait(driver, 20).until(ExpectedConditions.invisibilityOfAllElements(driver.findElements(By.xpath("//div[@class='loader']"))));