在日常android app自动化测试工作当中,使用一种工具可能难以定位到元素,目前主流有三种工具。
这三种工具定位的前提:
1、通过adb devices命令能够识别到至少一个android设备,
2、设备当前没有被其他应用程序占用。
第一种:android ADT自带的工具:uiautomatorviewer
android 4.2以上的版本,自带的自动化测试工框架是uiAutomator.
uiautomatorviewer就是它的元素定位工具了。
如果要用uiautomator来做自动化测试,还需要掌握java语言。
安装:
uiautomatorviewer是安卓调试工具(ADT)中的一部分。所以只需要安装ADT就可以了(不需要安装SDK)。
1、安装android studio
2、在android studio的启动页面当中,选择右下角的configure -> SDK Manager
会弹出如图:选择android SDK -> SDK Tools,按图中勾选,点击ok进入安装,安装完成即可关闭android studio。记住图中Android SDK Location对应
使用:
1、找到ADT安装目录,在其tools/bin目录下,找到uiautomatorviewer程序,双击打开。
(ps:目前不支持jdk1.8以上的版本,为了启动成功,要安装jdk1.8的版本)
2、定位元素。
第二种:appium的appium inspector
appium是目前最流行的开源的app功能测试框架。
同时支持iOS和Android的自动化测试,也支持多语言。
安装:
只要安装appium,那么appium inspector也就有了。
appium desktop下载地址:http:apium.io/
使用:
1、启动appium desktop之后,点击右上角的第一个按钮
2、在打开如下界面当中填写相关信息
3、会根据启动参数,去打开对应的app,然后会截取app当中的页面
第三种:python版uiautomator2中的weditor
python语言实现的一个app自动化测试框架
安装:
安装uiautomator2:pip install -U uiautomator2
初始化命令(往手机上推送apk包):python -m uiautomator2 init
安装定位工具weditor:pip install -U weditor
安装完成之后,命令行运行:weditor --help确认是否安装成功。
使用:
1、命令行输入:weditor 会自动打开一个浏览器,如下图
2、选择Android,输入设备序列号,点击connect。点击Dump Hierarchy,就可以看到元素的信息了。
快捷安装
github地址https://github.com/openatx/weditor
python -m weditor --shortcut
adb devices
在页面上输入手机设备号,点Connet按钮,看到出现一个小草的图标,就是连接成功了
python -m weditor --shortcut //创建桌面图标python -m weditor //命令行启动(别关掉)
Coding调试
可以在页面的右边调试运行代码,这点比appium强很多,可以编写代码边调试,还是非常方便的
Ctr+Enter
运行代码,会发现手机上已经点击成功
支持wifi连接
首先保证电脑和手机wifi在一个局域网,电脑上能ping的通手机的ip,输入手机的ip也可以抓到手机上的页面元素
总结:
以上三种定位告诉你:任何一个app自动化测试的框架,都会给你提供一个对应的定位工具!
android自带的UIAutomator测试框架,提供 uiAutomatorViewer,
appium测试框架,提供appium inspector,
python实现的uiAutomator2测试框架,提供weditor。
在app自动化测试的过程中,可以使用任意一种或多种来帮你进行元素定位。