Appium定位元素 - xPath
研究appium遇到的第一个困难是元素定位,而且元素定位在appium使用过程中经常用到,昨天遇到的问题,今天用xPath试了一下,也可以定位到,总结一下。
image.png还是这个计算结果的定位。
昨天的解决办法:
realStr = self.driver.find_element_by_android_uiautomator(\
'new UiSelector().className("android.widget.TextView").instance(6)').text
xPath实现方法:
首先明确一下,在元素的属性中,class就是xpath的地址,我们是可以通过class来写xpath的。
1 首先打开UIuiautomatorviewer
image.png2、下面开始一层一层找,我这里找到了可以唯一定位“65”所在位置的上层控件android.widget.HorizontalScrollView, 再向上层找,没有这个控件了,那么就从这个控件开始向下找。 首先这个控件也不是唯一的,可以看到是第四个,xPath索引是从1开始的,这里就定位为android.widget.HorizontalScrollView[4], 下一层是android.widget.LinearLayout, 再下层是android.widget.TextView, 这个控件也是不唯一的,65在第二个位置,那么写成android.widget.TextView[2], 这样就可以成功定位到了。写成语句如下:
realStr = self.driver.find_element_by_xpath("//android.widget.HorizontalScrollView[4]/\
android.widget.LinearLayout/android.widget.TextView[2]").text
网友评论