怎么使用Uiautomatorviewer获取元素的xpath

在学习和使用AndroidADT的时候,元素定位都会使用tools包下面自带工具uiautomatorviewer,但很多时候元素并没有text和id,只有class。但是,大家都知道class很多时候不是唯一属性,要通过class_Name()的方式来定位,返回的往往是第一个,这根本不是自己想要的。有些人会考虑使用driver.find_elements_by的这种方法来获取所有相同的class的对象,但这样用起来很麻烦,那怎么通过工具来获取xpath呢?


怎么使用Uiautomatorviewer获取元素的xpath_第1张图片

如上图,根本找不到xpath,这里就提供一个方法来就地解决这个问题,还是使用uiautomatorviewer.bat

1. 第一步:

下载lazyuiautomatorviewer.jar文件  ,

下载地址:https://github.com/lazytestteam/lazyuiautomatorviewer/blob/master/uiautomatorviewer.jar

注意,虽然这里是下载的lazyuiautomatorviewer但下载后会发现包名是uiautomatorviewer.jar

2. 第二步:

打开AndroidADT\sdk\tools\lib,将下载好的uiautomatorviewer.jar替换掉自带的uiautomatorviewer.jar

请注意,lazyuiautomatorviewer.jar包大小为11.1Mb或11.07Mb,为了防止意外,请先copy一份原uiautomatorviewer.jar到其他地方。

3 . 第三步:

在AndroidADT\sdk\tools\下运行uiautomatorviewer.bat,等待启动界面,但这里会出现闪退的情况,一般来说都和你的jdk版本有直接的关系,建议使用jdk7或jdk8.

jdk下载:http://www.oracle.com/technetwork/java/javase/downloads/index.html

4. 第四步:

安装完成jdk后,启动uiautomatorviewer.bat,再来看看吧:


怎么使用Uiautomatorviewer获取元素的xpath_第2张图片

希望大家都能成功!

你可能感兴趣的:(怎么使用Uiautomatorviewer获取元素的xpath)