软件测试 / 测试开发丨 App 自动化测试学习笔记
获取更多相关知识
本文为霍格沃兹测试开发学社学员学习笔记分享,文末附原文链接。
特殊控件 Toast
Toast 是什么
一种消息框类型
永远不会获得焦点无法被点击
Toast 显示的时间有限,Toast 会根据用户设置的显示时间后自动消失
是系统级别的控件,属于系统 settings
Toast 类的思想:就是尽可能不引人注意,同时还向用户显示信息,希望他们看到
Toast 定位
appium 用的是 uiautomator 底层来抓取 toast,
再把 toast 放到控件树内,但是它本身不属于空间
使用的是 uiautomator2
xpath 可以找到 //*[@class="android.widget.Toast"]//*[contains(@text,"xxx")] xxx:toast 的文本内容
App 弹窗异常处理
黑名单处理
运行过程中不定时弹框(广告弹窗,升级提示框,新消息提示框等等)
弹框不是 BUG(UI 界面提示,警告的作用)
装饰器优势
对原有函数的功能增强
不改变原有函数的逻辑
使代码更简洁、易维护
自动化测试架构优化
打造测试框架的需求与价值
领域模型适配:封装业务实现,实现业务管理
提高效率:降低用例维护成本,提高执行效率
增强功能:解决已有框架不满足的情况
自动化框架应具备的功能
支持管理用例,运行用例
支持查找元素/定位元素,对元素/页面 进行各种操作(点击,滑动,输入等等)
支持生成测试报告
能够实现功能的复用,(比如登录,搜索等)
当页面有异常弹框的时候,可以进行有效的处理
当用例失败,需要添加失败时的日志,截图,等信息,放在测试报告中
多设备并发
支持平台化
为什么要封装架构
复用
平台化
增强功能
需求与价值
项目结构优化
框架封装
参数化与数据驱动
支持支持测试用例 / 步骤层级的参数化驱动配置
配置方式包括三个部分参数定义(指定名字)数据源指定(指定 yaml 文件 /或者其它格式文件)数据源准备(无论是从线上环境 捞的数据,还是自己创建的测试数据)
总结
自动化测试框架应具备的功能
自动化测试框架优化(在 PO 的基础上,添加异常处理,日志,报告 ,截图,参数化与数据驱动等)逐步的将框架完善
版权声明: 本文为 InfoQ 作者【测试人】的原创文章。
原文链接:【http://xie.infoq.cn/article/98e5cac900c914fcf9745e8f9】。文章转载请联系作者。
评论