Appium——元素定位

欠伸展肢体,吟咏心自愉。这篇文章主要讲述Appium——元素定位相关的知识,希望能为你提供帮助。
首先介绍两种定位元素的工具,appium自带的 Inspector 和 android SDK自带的 uiautomatorviewer 1、UIAutomator Viewer比较简单,在模拟器打开app后,打开它,选择

Appium——元素定位

文章图片
 
点击这个按钮,就会同步模拟器或真机界面
Appium——元素定位

文章图片
 
点击页面中的元素,在右下角会显示该元素的一些信息
Appium——元素定位

文章图片
 
2、Inspector(android) 使用inspector就比较麻烦了,先设置appium ①首先是android setting
Appium——元素定位

文章图片
 
第一次设置的时候 package和launch activity是没有选择项的可以为空,填入Application path ②general settings中勾选下面这两项
Appium——元素定位

文章图片
 
③启动appium 就会发现会自动安装apk,然后点击appium中的搜索按钮,弹出inspector window,点击refresh,刷新出同步页面,在右下角也会显示出元素信息
Appium——元素定位

文章图片
 
  如果出现错误,记得查看appium 日志排查     元素定位方式: ①by_id  
Appium——元素定位

文章图片
 
②by_class_name  
Appium——元素定位

文章图片
③by_name 如果要定位的控件是有文字的,可以直接尝试by_name,或者如果上图中的text后面是有值的话 也可以用by_name ④by_link_text 如果是herf 链接标签的 可以直接尝试用link定位,但是只适用于webview,跟web自动化的是一致的 ⑤by_xpath 如下图,定位活动按钮
Appium——元素定位

文章图片
【Appium——元素定位】 
FrameLayout/ListView/LinearLayout/GridView/LinearLayout[1] 这是xpath的绝对路径 xpath可以这样写 第一种,利用元素属性 //android.widget.TextView[contains(@text, \'活动\')] 第二种,基本就是看元素路径了,利用index //android.widget.ListView[0]/android.widget.LinearLayout[0]/android.widget.GridView/android.widget.LinearLayout[0]/android.widget.TextView 一层层向下分析,如果出现相同class则根据index来定位,跟web中的xpath相同

    推荐阅读