目录
前言
- appium同selenium一样可使用id、name、xpath等方式定位到元素。
id定位
- 说明:通过UI AutomatorViewer工具查看的resource-id属性
- 使用:driver.find_element_by_id("这里是resource-id")

name定位
- 说明:通过UI AutomatorViewer工具查看的text属性;appium1.5以下老的版本是可以通过name定位的,新版本从1.5以后都不支持name定位了
- 使用:driver.find_element_by_name("请输入手机号码")

class定位
- 说明:通过UI AutomatorViewer工具查看的class属性;class属性一般不唯一
- 使用:driver.find_element_by_class_name("android.widget.EditText)

accessibility_id定位
- 说明:通过UI AutomatorViewer工具查看的content-desc属性;替代以前的
name定位方式,在 iOS 上,主要使用元素的label或name属性 - 使用:driver.find_element_by_accessibility_id(“content-desc的值”)

xpath定位
- 说明:xpath定位很强大,但是速度最慢,能用其他方式定位就尽量不使用xpath定位
- 使用:driver.find_element_by_xpath("//*[text()='请输入手机号码']")

ios_predicate定位
说明:iOS特有定位方式,速度快,可支持元素的单个属性和多个属性定位,
使用:driver.find_element_by_ios_predicate("type == 'XCUIElementTypeButton")
android_uiautomator定位
说明:android特有定位
格式:new UiSelector().定位方式,如:new UiSelector().resourceId("id")、new UiSelector().text("text文本")等
使用:driver.find_element_by_android_uiautomator("new UiSelector().resourceId('id值')"
本文详细介绍Appium支持的各种元素定位方法,包括id、name、class、accessibility_id、xpath等,并针对iOS和Android平台提供了特定的定位策略。
1万+

被折叠的 条评论
为什么被折叠?



