不管是selenium仍是appium,元素定位都是咱们开始实现自动化面临的第一个问题。selenium还好,咱们能够在浏览器的调试页面进行元素定位仍是蛮方便的。那么appium怎么作呢?css
我看到不少资料,帖子都是说的appium自带的Inspector这个工具进行的元素定位。而笔者不知道是电脑仍是什么的问题,这个工具是没法使用的。今天给你们说的是另外一个工具。python
uiautomatorviewerandroid
这个工具是在咱们Android的SDK的tools的文件夹里面的。使用方法也很简单。这里我以安卓模拟器为例给你们进行讲解。web
首先打开模拟器,打开到咱们须要定位的元素的页面。而后再tools中双击uiautomatorviewer,这个是个批处理的文件,双击就能够打开浏览器
能够看到这样的一个画面。接着点击上面那两个带着小机器人的手机形状的图标。我还没弄清楚这俩有啥区别,不过均可以用来辅助咱们定位元素这里先不纠结。app
好比,咱们如今要定位这一条短信的内容。那么咱们就能够经过右边的text,resource-id,class去定位工具
这里的text其实就是咱们用的方法中的nameui
只要经过find_element_by_name()而后把text的值写到括号里就能够了调试
find_element_by_name("0")blog
而resource-id实际上就是id
经过find_element_by_id("com.android.mms:id/text_view")也可以完成这个元素的定位
class呢是classname,这个不是webdriver的方法,是appiumdriver的方法。还能够协助咱们进行xpath方法的定位这个下回再说。
这里还有一个东西要讲一下就是content-desc
这个其实是咱们python的appium中appiumdriver的另外一个方法
find_element_by_accessibility_id("")这个也是元素定位的方法,不过这里是空的因此没法完成定位。
定位的方法还有不少,classname,css,xpath等,这些咱们下回再讲。目前笔者也是水平较浅只掌握了上面的几种方法。