【问题标题】:How to wait until all loaders disappears using Selenium WebDriver through Java如何通过 Java 使用 Selenium WebDriver 等到所有加载器消失
【发布时间】:2020-04-21 19:20:16
【问题描述】:

我正在使用 selenium web 驱动程序,我需要等到所有加载程序消失。我在仪表板页面上有 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")));

【问题讨论】:

    标签: selenium-webdriver xpath css-selectors loader webdriverwait


    【解决方案1】:

    由于您在仪表板页面上共有 12 个小部件,并且您需要等到所有小部件都加载完毕,您必须为 invisibilityOfAllElements() 诱导 WebDriverWait,您可以使用以下任一 @987654322 @:

    • 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']"))));
      

    【讨论】:

    • invisibilityOfAllElements() 与 cssSelector 完美配合。谢谢一百万:-)
    猜你喜欢
    • 2014-11-23
    • 2016-07-28
    • 1970-01-01
    • 2016-11-09
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 2014-12-21
    相关资源
    最近更新 更多