03-06 APP-UI自动化测试-等待方式
与 Web 自动化测试类似。
强制等待(不推荐)
time.sleep()
隐式等待(全局性)
【03-06 APP-UI自动化测试-等待方式】设置一个超时时间,服务端 appium 会在指定的时间内,不停的查找,默认的时间值是 0
在服务端等待
用法:
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS)
建议在 setup() 方法中加上
注意:隐式等待仅对 查找元素 find_element() 方法生效,需要搭配显式等待使用
显式等待(等待指定元素)
在客户端等待,可以等待动态加载的 ajax 元素;
页面上元素一般出现的先后顺序
- title
- dom 树出现,但 presence 还不完整
- css 出现,表示可见 visibility
- js 出现,代表相关的 js 响应事件可执行(例如可点击 clickable)
js 文件加载会阻塞 HTML 内容的加载,有些需要用到 js 异步加载的方式来完成 js 的加载
样式表下载完成之后,会与之前的样式表一起进行解析,从而对之前的元素重新渲染
相关模块:
- WebDriverWait()
- unitil()
- expected_conditions
推荐阅读
- 人脸识别|【人脸识别系列】| 实现自动化妆
- Java+Selenium|Java+Selenium Web UI自动化测试的一些小总结
- Jenkins自动化部署-前端篇|Jenkins自动化部署-前端篇 (四)
- Jenkins+SonarQube代码质量检查自动化
- iOS|iOS 高效开发必备技巧之自动化打包(shell xcode11 上传App Store 蒲公英等平台)
- 接口自动化测试PHPUnit-框架代码开发3
- appium+python自动化测试(2)
- python|python UI自动化11- 常见定位元素用法(二)
- 脚本自动化打包
- 接口自动化测试