03-06 APP-UI自动化测试-等待方式

与 Web 自动化测试类似。

强制等待(不推荐)

time.sleep() 

隐式等待(全局性)

设置一个超时时间,服务端 appium 会在指定的时间内,不停的查找,默认的时间值是 0

在服务端等待

用法:

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

建议在 setup() 方法中加上

注意:隐式等待仅对 查找元素 find_element() 方法生效,需要搭配显式等待使用

显式等待(等待指定元素)

在客户端等待,可以等待动态加载的 ajax 元素;

页面上元素一般出现的先后顺序

  1. title
  2. dom 树出现,但 presence 还不完整
  3. css 出现,表示可见 visibility
  4. js 出现,代表相关的 js 响应事件可执行(例如可点击 clickable)

HTML 文档时自上而下加载的

js 文件加载会阻塞 HTML 内容的加载,有些需要用到 js 异步加载的方式来完成 js 的加载

样式表下载完成之后,会与之前的样式表一起进行解析,从而对之前的元素重新渲染

相关模块

  • WebDriverWait()
  • unitil()
  • expected_conditions

你可能感兴趣的:(测试测试工具)