zoukankan      html  css  js  c++  java
  • selenium中等待元素的加载

    在实际使用中,有时会出现一个元素还没有加载出来,导致无法获取,此时需要selenium处理来等待一段时间,此时处理方法有以下几种:

    1、最笨、最简单但是最不推荐的方式:

      Thread.sleep(times);

    2、采用 WebDriverWait类+ExpectedConditions接口,具体用法例子:    WebDriverWait wait = new WebDriverWait(driver,10);
             WebElement e1 = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//*[@id='site_nav_md']/ul/li[3]/a[1]/span")));

      含义:表示默认等待1-10s, 10内,若ExpectedConditions找到元素立刻返回,超过是10s报超时。

    3、隐形等待

      WebDriver driver=new FirefoxDriver();

      driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);

      说明:
        执行driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS);后

        当要查找元素,而这个元素没有马上出现时,会告诉WebDriver查询Dom一定时间(设置了10s)。默认值是0, 设置之后,这个时间将在WebDriver对象实例整个生命周期都起作用

  • 相关阅读:
    快速排序
    归并排序
    堆排序
    通过先序和中序创建二叉树
    插入排序
    二叉排序树
    九宫重排
    字符串匹配 sunday算法
    傻逼数学题(math)
    最近点对学习笔记
  • 原文地址:https://www.cnblogs.com/sylovezp/p/4178547.html
Copyright © 2011-2022 走看看