Appium移动端自动化测试(二):uiautomator2.0使用
uiautomator2.0
其中appium1.5版本及以上、Android 5.0版本以上才支持
环境准备:
1. npm安装
npm install appium(安装后的版本一般都是最新的)
启动: appium -a 127.0.0.1 -p 4723
2. appium-destop安装
官网地址:https://github.com/appium/appium-desktop/releases/tag/v1.6.2
下了好多次,均以失败告终(┭┮﹏┭┮)
最后安装的是appium-desktop-Setup-1.1.0-beta.4.exe
3. android status
功能最强大,集成了sdk/avd于一体,推荐使用(不过安装时间较长)
UiAutomator2改进
1. 基于 Instrumentation,可以获取应用Context,使用 Android服务及接口
2. 基于 Junit4,测试用例无需继承于任何父类,方法名不限,使用注解 Annotation进行
3. UI执行效率比 1.0 快,测试执行可使用AndroidJunit 方式及gradle 方式
4. API 更新,新增UiObject2、Until、By、BySelector等:APIFor UI Automator
5. Log 输出变更,以往使用System.out.print输出流回显至执行端,2.0 输出至Logcat
缺点:
1、测试脚本只能使用Java语言。
2、测试脚本必须每次被上传到设备上运行。 我们希望测试能够用一个更脚本化的语言,例如Python编写,同时可以每次所见即所得地修改测试、运行测试
安装
uiAutomator 2.0 环境配置
环境结构:java、Android、IDE
点击、按键、滑动、拖动、输入、长按(常见设备操作)
实战练习
手机自带计算器的加减乘除测试
列出所有包名:adb shell pm list packages
搜索计算器包名: adb shell pm list packages | findstr calc
结果: package:com.android.calculator2
获取AppActivity
adb shell
dumpsys window windows | grep -E "mFocusedApp"