当前位置: 代码迷 >> 综合 >> appium - 常用的元素定位
  详细解决方案

appium - 常用的元素定位

热度:44   发布时间:2023-12-26 14:23:09.0

元素定位

1.通过id定位(取resource-id值)

driver.find_element_by_id('com.android.dongsport:id/tv_home1')
driver.find_elements_by_id('com.android.dongsport:id/tv_home1')

2.通过class_name定位(取class值)

driver.find_element_by_class_name('android.widget.TextView')
driver.find_elements_by_class_name('android.widget.TextView')

3.通过accessibility_id定位(取content-desc值)

driver.find_element_by_accessibility_id('value')

4.通过android_uiautomator定位,利用UiAutomator自动化框架

使用UIAutomator中的UISelector类来处理元素定位

在Python客户端appium库中通过,uiautomator来获取元素的方法为:

driver.find_element_by_android_uiautomator()

该方法的参数为UiSelector类定位元素的表达式:

new UiSelector().函数名称("定位表达式")

实例化一个UiSelector对象,然后通过实例调用接口。

示例:

driver.find_element_by_android_uiautomator('new UiSelector().resourceId("com.android.dongsport:id/tv_home1")')# 组合定位
uiselector_loc = 'new UiSelector().resourceId("com.android.dongsport:id/tv_home1").description("QQ音乐")'
driver.find_element_by_android_uiautomator(uiselector_loc)

5.通过xpath定位

driver.find_element_by_xpath('//android.widget.TextView[@resource-id="com.android.dongsport:id/tv_home1"]')