原生定位
- 官网地址:
https://developer.android.com/reference/android/support/test/uiautomator/UiSelector.html
- ID定位
WebElement element =driver.findElement(
AppiumBy.androidUIAutomator("new UiSelector().resourceId("com.xueqiu.android:id/stock_layout")")
)
- 组合定位
driver.findElement(
AppiumBy.androidUIAutomator("new UiSelector().resourceId("com.xueqiu.android:id/tab_name").text("股票")"))
css selector 定位
- 官网说明:
https://github.com/appium/appium/releases/tag/v1.19.0 - Android: Appium Server 版本 >= 1.19.0
- iOS:Appium Server>= 1.21.0
- css selector 会转化为 Android/iOS 原生定位的定位策略
- Android 转为 Android Uiautomator 定位方式
- iOS 转为 class chain 定位方式
- css selector 用法
# id 定位转化:
elementsById("someResourceID") --> elementsByCss("#someResourceID")
# class name 定位转化:
elementsByClassName("android.widget.TextView") --> elementsByCss("android.widget.TextView")
# accessibility id 定位转化:
elementsByAccessibilityId("Some Content Description") --> elementsByCss('*[description="Some Content Description"]')
# xpath 定位转化:
elementsByXpath("//android.widget.TextView[@description='Accessibility']") --> elementsByCss("android.widget.TextView[description='Accessibility']")
- 代码转化实例:
# 代码:
driver.findElement(
AppiumBy.cssSelector("#com\.xueqiu\.android\:id\/home_search"));
# 解析前:
{"using":"css selector",
"value":"#com\.xueqiu\.android\:id\/home_search"}
# 解析后:
{"strategy":"-android uiautomator",
"selector":"new UiSelector()
.resourceId("com.xueqiu.android:id/home_search")",...}
霍格沃兹的测试管理班是专门面向测试与质量管理人员的一门课程,通过提升从业人员的团队管理、项目管理、绩效管理、沟通管理等方面的能力,使测试管理人员可以更好的带领团队、项目以及公司获得更快的成长。提供 1v1 私教指导,BAT 级别的测试管理大咖量身打造职业规划。