App自动化测试(三)基本元素定位和交互

定位

  • 基本定位
    • driver.find_element_by_accessibility_id() 对应 content-desc
    • driver.find_element_by_id() 对应 resource-id
    • driver.find_element_by_name() 对应 text
    • driver.find_element_by_xpath() 对应 xpath
  • By 定位
    导包:from appium.webdriver.common.appiumby import AppiumBy
    • self.driver.find_element(AppiumBy.ID,"resource-id")
    • self.driver.find_element(AppiumBy.XPATH,"xpath")
    • self.driver.find_element(AppiumBy.ACCESSIBILITY_ID,"content-desc")
    • self.driver.find_element(AppiumBy.NAME,"text")
  • Xpath定位
    • driver.find_element_by_xpath("//*[@text=' 扫一扫 ']")
    • driver.find_element_by_xpath("//*[@resource-id='com.taobao.taobao:id/tv_scan_text']")
    • driver.find_element_by_xpath("//*[@content-desc=' 帮助 ']")
    • driver.find_element(AppiumBy.XPATH, "//*[@resource-id='com.taobao.taobao:id/tv_scan_text'' and @text=' 你好']")
    • driver.find_element(AppiumBy.XPATH,"//*[Contains(@text, 'hello')]")

交互

  • 元素交互方法

    • 点击方法:element.click()
    • 输入操作:element.send_keys(“tong”)
    • 设置元素的值:element.set_value(“tongtong”)
    • 清除操作:element.clear()
    • 是否可见:element.is_displayed 返回 true or false
    • 是否可用:element.enabled() 返回 true or false
    • 是否被选中:element.is_selected() 返回 true or false
    • 获取属性值:element.get_attribute(name)
  • 元素属性

    • 获取元素文本:element.text
    • 获取元素坐标:element.location,结果:
    • 获取元素尺寸(高和宽):element.size,结果:
posted @ 2022-07-16 16:44  小小滴人a  阅读(172)  评论(0编辑  收藏  举报