APP测试背景
面临的问题
❖ 按⽉发布->按周发布->按⼩时发布
❖ 多端发布: Android iOS 微信⼩程序 h5
❖ 多环境发布: 联调环境 测试环境 预发布环境 线上环境
❖ 多机型发布: 众多设备型号 众多系统版本
❖ 多版本共存: ⽤户群体中存在多个不同的版本
❖ 历史回归测试任务: 成百上千条业务⽤例如何回归
❖ 总结: 背锅+加班
如何应对
测试体系梳理
- 业务测试
- 专项测试
- 回归测试
测试分层
UI分层测试
APP测试工具体系
什么样的项目不适合做UI⾃动化
❖ 公司节奏慢:⼈⼯测试就可以满⾜公司需求
❖ 初创团队:业务未定型,重构频繁,⽆回归测试压⼒
❖ 业务⽆积累:⼤量⼩功能频繁上线
❖ 测试体系完备:单测、集成测试⾮常完备,完美⾦字塔
自动化测试框架的选择
一、认识Appium
设计理念
二、自动化环境搭建
安装JDK
推荐安装jdk1.8版本,不然使用uiautomatorviewer定位元素时可能会有问题。
安装Android Studio
1.使用Android Studio的模拟器。
当然,还可以使用其他模拟器,如网易木木、夜神模拟器。
2.使用uiautomatorviewer定位。
安装Appium Desktop
安装Nodejs
安装Appium server
三、adb相关命令
安装apk
adb install -r apk路径
adb install -r /C/Users/huang/Downloads/com.xueqiu.android_12.4.6_254.apk
启动app
adb shell am start -W -n com.xueqiu.android/.view.WelcomeActivityAlias -S
获取app入口
adb logcat |grep -i displayed
打开app,出现的第一个就是app入口。
雪球app入口:com.xueqiu.android/.view.WelcomeActivityAlias
显示模拟器
adb devices
四、Appium Desktop录制
五、用例编写
1.导⼊依赖
2.设置capabilities
3.初始化driver
4.元素定位与操作find+action
5.断⾔ assert
六、元素定位
xpath定位
单属性定位
逻辑运算符定位
空间关系定位,如先找到共同的父节点,再找同一父节点的其他节点
id定位
UIAutomator selector定位
比xpath定位要快,但是只能时android使用,一般很少使用,其表达式非常复杂。
定位参考文章
七、常用API
八、Toast控件
九、Webview
Webview是什么
怎么判断时Webview元素
怎么定位Webview元素
十、PO
十一、数据驱动
十二、排查错误
Appium log分析
分析界面数据
脚本外调试
curl命令