appium元素定位之AndroidUiAutomator

春衣少年当酒歌,起舞四顾以笑和。这篇文章主要讲述appium元素定位之AndroidUiAutomator相关的知识,希望能为你提供帮助。
UIAutomator 元素定位是 android 系统原生支持的定位方式,虽然与 xpath 类似,但比它更好用,并且支持元素全部的属性定位,定位原理是通过 android 自带的android uiautomator 的类库去查找元素
【appium元素定位之AndroidUiAutomator】方法名:find_element_by_android_uiautomator(‘uiSelector 表达式‘)
该方法的参数为 UiSelector 类定位元素的表达式:new UiSelector().函数名称("定位表达式")
实例化一个 UiSelector 对象,然后通过实例调用对应的方法,每一个方法返回的都是UiSelector 对象本身
注意:UiSelector 类下面的函数的参数如果是字符串,必须是双引号,这是 java 的语法风格,在 Java 中,双引号才表示字符串
UiSelector 类的函数如下:
1.资源id方法

  • resourceId(String id)资源 id
  • resourceIdMatches(String regex)资源 id 正则
2.文本方法
  • text(String text)文本匹配
  • textContains(String text)文本包含
  • textStartsWith(String text)文本开始字符
  • textMatches(String regex)文本正则
3.描述方法
  • description(String desc)描述
  • descriptionContains(String desc)描述包含
  • descriptionStartsWith(String desc)描述开始字符
  • descriptionMatches(String regex)描述正则
4.类名方法
  • childSelector(UiSelector selector)子类
  • fromParent(UiSelector  selector)父类
  • className(String className)类名
5.索引、实例方法
  • index(int index)编号
  • instance(int instance)索引
6.特有属性方法
  • checked(boolean val)选择属性
  • checkable(boolean val)点击属性
  • enabled(boolean val)enabled 属性
  • focusable(boolean val)焦点属性
  • longClickable(boolean val)长按属性
  •   scrollable(boolean val)滚动属性
  • selected(boolean val)选择属性
7.包名方法
  • packageName(String  name)包名
  • packageNameMatches(String  regex)包名正则
示例:
new UiSelector().text("text")# 使用元素 text 属性定位 new UiSelector().resourceId("id")# 使用 id 定位 new UiSelector().className("className")# 使用元素类型定位# 还可以元素多个属性自由组合 new UiSelector().className("className").text("text") new UiSelector()..resourceId("id").clickable(val)


    推荐阅读