zoukankan      html  css  js  c++  java
  • 【appium】根据UIAutomator定位元素

    text属性的方法

    driver.find_element_by_android_uiautomator('new UiSelector().text("Custom View")').click()         #text
    driver.find_element_by_android_uiautomator('new UiSelector().textContains("View")').click()        #textContains
    driver.find_element_by_android_uiautomator('new UiSelector().textStartsWith("Custom")').click()    #textStartsWith
    driver.find_element_by_android_uiautomator('new UiSelector().textMatches("^Custom.*")').click()    #textMatches
    

    class属性的方法

    driver.find_element_by_android_uiautomator('new UiSelector().className("android.widget.TextView").text("Custom View")').click()     #className
    driver.find_element_by_android_uiautomator('new UiSelector().classNameMatches(".*TextView$").text("Custom View")').click()          #classNameMatches
    

     伪xpath方法定位

    driver.find_element_by_android_uiautomator('new UiSelector().text("Custom View").fromParent(new UiSelector().text("Accessibility Service"))').click()            #通过同级元素定位同级元素
    driver.find_element_by_android_uiautomator('new UiSelector().className("android.widget.ListView").childSelector(new UiSelector().text("Custom View"))').click()  #通过父级元素定位子集元素
    

     resourceId属性的方法

    
    
    driver.find_element_by_android_uiautomator('new UiSelector().resourceId("android:id/text1")')    #resourceId
    driver.find_element_by_android_uiautomator('new UiSelector().resourceIdMatches(".*id/text1$")')  #resourceIdMatches
    
    
    
    description属性的方法
    driver.find_element_by_android_uiautomator('new UiSelector().description("Custom View")').click()      #description
    driver.find_element_by_android_uiautomator('new UiSelector().descriptionStartsWith("Custom")').click() #descriptionStartsWith
    driver.find_element_by_android_uiautomator('new UiSelector().descriptionMatches("^Custom.*")').click() #descriptionMatches
    

     元素的其他属性

    除了以上比较常用的方法外,UIAutomator还支持其他一些方法,比如根据控件属性是否可点击可聚焦可长按等来缩小要定位的控件的范围,具体使用方法不一一列举(checked,clickable,focesed.......)

    driver.find_element_by_android_uiautomator('new UiSelector().clickable(true).text("Custom View")').click() 
    
     
  • 相关阅读:
    使用MSXML2::IXMLDOMDocument2Ptr每次都要CreateInstance和load(xmlfile)吗?
    .Net程序安装打包的一些经验贡献
    感慨SQL2005中的数据挖掘算法
    COM客户端没法激活托管代码生成的COM Server的原因
    预感~=命中注定
    创业经理10大必备素质
    全局缓存管理工具
    XML DOM的结构概念图解哪里是Element,哪里是Attribute,哪里是Text
    用GetVolumeInformation得到的不是硬盘的序列号,不要再抄这样的错误好吗?
    站在生活的背后
  • 原文地址:https://www.cnblogs.com/paulwinflo/p/4742529.html
Copyright © 2011-2022 走看看