appium定位方法


1.id定位

driver.find_element_by_id("这里是resource-id")

2.name定位 (新版本的appium 1.7 已经没有这个定位方法了)

driver.find_element_by_name("这里是text")

3.class定位

driver.find_element_by_class_name("class属性")

(注:一般一个页面上的class属性不唯一,元素不唯一的话定位会报错了)

4..accessibility_id定位

driver.find_element_by_accessibility_id(“content-desc的值”)

5.坐标定位

driver.tap([(374, 831), (654, 906)], 500)     500是点击时间  tap是模拟点击

6.Xpath定位

driver.find_element_by_xpath(“xpath”)

 

 

android_uiautomator定位方法

text文本定位: 定位元素文案为"Login"的按钮

dr.find_element_by_android_uiautomator('text(\"Login\")').click()    

dr.find_element_by_android_uiautomator("new UiSelector().text(\"Login\")").click()   #第2种写法

精确定位

模糊定位

dr.find_element_by_android_uiautomator('textContains(\"Log\")').click()

dr.find_element_by_android_uiautomator("new UiSelector().textContains(\"Login\")").click()   #第2种写法

 后记:

ios的 是  driver.find_element_by_ios_uiautomation()

 后记:

这里 可以配合  做显示等待

https://www.cnblogs.com/kaibindirver/p/8401847.html

https://www.cnblogs.com/kaibindirver/p/10558311.html

 

resource-id定位

dr.find_element_by_android_uiautomator("new UiSelector().resourceid(\"resource-id\")").click() 

className定位

dr.find_element_by_android_uiautomator("new UiSelector().className(\"className\")").click() 

className复数定位 (感觉这个方法没啥用啊?)

loc_calss="new UiSelector().className(\"className\")" 

dr.find_element_by_android_uiautomator(loc_calss)[2].click() 

组合定位

text+resourceid

dr.find_element_by_android_uiautomator('resourceid(\"resource-id\").text(\"Login\")').click()   

这里的都可以用 password属性 如:  new UiSelector().password(\"false\")")在和上面一样组合或者单独用   -------  我猜的

 后记: 

使用这个定位方法记得在头部加参数

desired_caps = { 'automationName': 'Uiautomator'}


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM