今天上线发现还是有人对appium这块感兴趣的,先谢谢大家的关注和收藏了,您的收藏就是对我最大的支持
今晚也终于有空来水一下 文章了,这一次讲详细介绍appium中的元素定位。
书接上文【appium】appium自动化入门之API(下)——两万字API长文,建议收藏
环境搭建篇【appium】appium自动化入门之环境搭建(上)
目录
2.7 appium 元素定位
前言
appium 定位 app 上的元素,可以通过 ==id,name.class ==这些属性定位到
2.7.1 id 定位
- appium 的id属性也就是通过== UI Automator ==工具查看的 resource-id 属性
- 如上图的定位,就可以通过 id 来定位格式 :
driver.find_element_by_id(" #这 里 是 resource-id")
driver.find_element_by_id("#com.taobao.taobao:id/home_searchedit")
2.7.2 name 定位
-
name 定位就是通过 UI Automator 工具查看的== text 属性== (注意的是:如果 text 属性为空,那就不能通过 name 属性定位了)
-
如上图的定位,就可以通过 name 来定位 格式:driver.find_element_by_name("#这里是 text") driver.find_element_by_name("#搭配新宠不能缺")
2.7.3 class 属性
-
class 定位就是通过 UI Automator 工具查看的 class 属性
-
如上图的定位,就可以通过 class 来定位
格式 :driver.find_element_by_class_name("class 属 性 ") driver.find_element_by_class_name(“android.widget.EditText”)
(注意的是:一般一个页面上的 class 属性不唯一,元素不唯一的话定位会报错了)
2.7.4 accessibility_id
-
accessibility_id 定位就是通过 UI Automator 工具查看的 content-desc 属 性(当然下图这个元素的 content-desc 属性为空,就不能通过这个属性定位了, 这里只是举个例子)
-
如上图的定位,看到 content-desc 属性有值,就可以通过 accessibility_id 来定位了格式:driver.find_element_by_accessibility_id(“#content-desc 的值”) driver.find_element_by_accessibility_id(“#xxx”)
(注:一般一个页面上的 class 属性不唯一,元素不唯一的话定位会报错了)
一般来说上面的这几个定位的,相对而言比较基础,适合一些没代码基