zoukankan      html  css  js  c++  java
  • Appium(三)等待方式

    Apiium等待的几种方式

    Appium的等待方式一般有三种,隐式等待,休眠等待,显式等待 ,下面分别来看看

    1、隐式等待

    •  self.driver.implicitly_wait(IMPLICITLY_WAIT_TIME),全局等待,参数是秒,隐式等待一旦设置,就贯穿整个WebDriver的生命周期
    • implicitly_wait会在每个元素查找的时候都等待设置的时长,到达时长后找不到元素会抛出找不到元素的异常
    • implicitly_wait会影响脚本的执行速度

    2、休眠等待

    • sleep:from time import sleep,参数是秒,可穿插在代码中,使用此函数后程序会暂停指定的秒数,等待之前的方法执行完毕

    一般不建议使用,影响代码的观赏性,sleep在等待元素加载时也不会智能的判断元素是否加载完成

    3、显式等待 WebDriverWait

    • from selenium.webdriver.support import expected_conditions
    • from selenium.webdriver.support.wait import WebDriverWait
    • WebDriver(driver,timeout,poll_frequency=0.5).until(expected_conditions.visibility_of_element_located(*locator))
    • driver传入的WebDriver实例即我们代码中用的driver,timeout等待时长,poll_frequency执行until或until_not的时间间隔,默认0.5,locator需要等待的元素一般以元组的形式传入,如(By.XPATH,"//*[@text='xxxxx']")
    • 显式等待会在指定的时间内检索查找,一旦找到元素就立即执行返回,不需要等待时间执行完,如果规定时间内没有检索到就报找不到元素异常

    4、until和until_not以及expected_conditions的方法

    • until是等待元素出现或其他什么操作,until_not正好是相反
    • expected_conditions的方法如下图,通常都是使用visibility_of_element_located判断元素是否显
  • 相关阅读:
    Java核心技术Java程序设计
    Mac下查看 Java 安装目录位置和安装数量
    Intellij IDEA快捷键与使用小技巧
    Java 8 新特性 用 Collectors 对 List 去重
    onInterceptTouchEvent()与onTouchEvent()的机制
    Android 开发之多线程处理、Handler
    安卓中使用XmlPullParser解析xml文件
    监控部署nagios+snmp
    阿里RDS数据库 全量备份恢复到本地MYSQL
    20120412
  • 原文地址:https://www.cnblogs.com/guoke1001/p/12966824.html
Copyright © 2011-2022 走看看