zoukankan      html  css  js  c++  java
  • APP元素常用定位方式

    1、常用的定位方式

    name value
    id id属性值
    class class属性值
    xpath xpath表达式

            

          

      

     

     

    2、通过id定位

      方法:driver.find_element_by_id(id_value)  #id_value为id属性值

    3、通过class定位

      方法:driver.find_element_by_class_name(class_value)    #class_value为class属性值

    4、通过xpath定位

      方法:driver.find_element_by_xpath(xpath_value)      #xpath_value为xpath表达值

      

      xptah常用属性定位:
          1. id ://*[contains(@resource-id,'com.android.settings:id/search')] 
          2. class ://*[contains(@class,'android.widget.ImageButton')]
          3. text ://*[contains(@text,'WLA')]
    
      模糊定位 contains(@key,value): value可以是部分值

    5、定位一组元素

      只需把element改为elements即可

    6、其他定位方式:android_uiautomator定位

      方法1:driver.find_element_by_android_uiautomator('new UiSelector().resourceId("id属性值")')

      方法2:driver.find_element_by_android_uiautomator('new UiSelector().text("text文本")')

      方法3:driver.find_element_by_android_uiautomator('new UiSelector().containstext("包含text文本")')

      方法4:driver.find_element_by_android_uiautomator('new UiSelector().ClassName("class属性值")')

      方法5:driver.find_element_by_android_uiautomator('new UiSelector().description("content-des属性值")')

      方法6:driver.find_element_by_android_uiautomator('new UiSelector().starwith("以txt文本开头")')

    7、案例  定位设置里面的蓝牙

    from appium import webdriver
    import time
    desired_caps = {
    "platformName":"Android",
    "platformVersion":'5.1.1',
    "deviceName":"127.0.0.1:21503",
    "appPackage":"com.android.settings",
    "appActivity":".Settings",
    "unicodeKeyboard":True,
    "resetKeyboard":True
    }

    driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)
    time.sleep(3)
    #id定位
    #driver.find_elements_by_id('com.android.settings:id/title')[1].click()
    #class定位
    #driver.find_elements_by_class_name('android.widget.TextView')[4].click()
    #xpath定位
    #driver.find_element_by_xpath("//*[@text='蓝牙']").click()
    #android_automator定位
    #driver.find_element_by_android_uiautomator('new UiSelector().text("蓝牙")').click()
    #driver.quit()

      



  • 相关阅读:
    UVA 465 Overflow (浮点数的优势)
    UVA 424 Integer Inquiry (大数相加问题)
    UVA 10494 If We Were a Child Again(大数与整型相除取整和取余)
    粘一个在UVA和ZOJ都能AC但POJ WR的代码
    UVA 340 MasterMind Hints
    UVA10815 Andy's First Dictionary
    MSComm写串口通信驱动步骤
    UVA 10106 Product (大数相乘问题)
    实现工具栏中添加的组合框接收回车消息
    UVA 10420 List of Conquests
  • 原文地址:https://www.cnblogs.com/xwxxh/p/12660183.html
Copyright © 2011-2022 走看看