Android应用 如何定位UI元素
【一】定位工具
我们常用的定位工具有两种:
1. android sdk自带的uiautomator viewer
2. appium自带的inspector
这两种工具的使用,和用法都各有优劣和特点,接下来一一介绍:
uiautomator viewer
uiautomator viewer位于android-sdk\tools目录下,双击uiautomatorviewer.bat就可以运行。
注:如果没有jdk或jre,或者安装jdk没有配置好环境变量,uiautomator viewer运行不了。
如图,工具显示大概分4块区域,菜单栏、截屏区域、xml文件代码区域、元素信息区域;
点击菜单栏第二个或第三个按键就可以获取手机屏幕截图,并对其中元素定位。
基本使用方式是:
1. 获取屏幕截图;
2. 移动鼠标到要定位的元素上方,点击鼠标左键,边框会从虚线变为实线;
3. 查看右下角元素信息区域的相关元素属性。
注:如果要取消选择元素只需要对已点击元素再点击一次鼠标左键
inspector
使用inspector工具需要先启动appium server,点击右上角的放大镜图标。
需要设置的大概是两个地方:
1. 点击Automatic Server
2. 填写App的desired capabilities就是之前启动app在python中设置的desired_caps,基本可以照搬。
然后点击右下角的start session,启动inspector的session。
如上图,inspector大概分成4块区域:菜单栏,截屏区域,xml文件源码,元素定位方式及属性信息。
选取元素的方式和uiautomator viewer类似,也是鼠标坐标点击选取,查看右侧元素信息,再次点击取消选取。
注:uiautomator viewer使用方便,启动快捷,不需要启动session与手机通信,但是某些App(例如京东)使用的框架可能无法解析并获取,导致如下的错误。
注:inspector相对来讲,功能更强大一些,几乎所有的App都可以获取到截屏和xml源文件,但是启动慢,设置项多,最麻烦的是,每运行一次用例,inspector的都需要重新启动一次session。
转自 https://baijiahao.baidu.com/s?id=1687498147502016068&wfr=spider&for=pc