Android 自动化之元素定位 xpath

1.通过xpath定位元素

uiautomatorviewer  获取元素路径

2. 像图片1的元素路径 为:

find_element_by_xpath("//android.support.v4.view.ViewPager/android.widget.Linearlayout/android.widget.LinearLayout[3]/android.widget.Button[1]")

从外往里一层一层的剥,最终找到要的元素。

注意:xpath路径不能从最外层的整个页面开始,那样会报错。要从包含该控件的最上层的class开始写。

什么是包含该空间的最上层元素呢? 像这里是:android.support.v4.view.ViewPager

我们点击 android.support.v4.view.ViewPager 就发现 实际就是整个键盘区域

andriod.support.v4.view.ViewPager

元素的定位貌似和我们用uiautomatorviewer获取到的不一致。

android.widget.LinearLayout[3]/android.widget.Button[1]  而不是 android.widget.LinearLayout[2]/android.widget.Button[0]

笔者认为要 定位第三个android.widget.Linearlayout中的第一个button.

有一种说法xpath定位元素是从1开始 而不是从0开始

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章