appium通过同级别(兄弟关系)元素找到元素

Posted testway

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了appium通过同级别(兄弟关系)元素找到元素相关的知识,希望对你有一定的参考价值。

在做appium测试用例的时候,要获取金额值,用uiautomatorviewer查看该元素,该元素没有特别明显的个性特点,唯一有特点的定位是有content-desc值,但是该值是变动的,所以无法通该元素自身特点来找到该元素。元素如下图:

既然无法通过自身查找元素,发现也无法通过上一级元素定位,后面发现底部的按钮“我的资产(元)”算是这个页面比较有特殊的,并且肯定能定位到的,再查看“我的资产(元)”元素和金额元素是同一个级别的,这样就能通过xpath的兄弟关系找到金额元素,关系如下:

 

 怎样通过兄弟关系找到元素呢,查找xpath语法资料,Element <E1> preceding some sibling <E2> 可以满足需求

依照xpaht语法要求,//E2/preceding-sibling::E1,先找到e2再找e1 定位的是e1

e2定位的是:"//android.view.View[@content-desc=\'我的资产(元)\']

因为e2 前面只有e1 ,所有定位e1就只要用android.view.View就可以了,最后,能准确找到金额定位方式为:

//android.view.View[@content-desc=\'我的资产(元)\']/preceding-sibling::android.view.View

 

以上是关于appium通过同级别(兄弟关系)元素找到元素的主要内容,如果未能解决你的问题,请参考以下文章

拖动同级别元素显示辅助线,辅助对齐,吸附.

jQuery 选择器

appium xpath找兄弟元素 根据二师兄找大师兄 语法:driver.find_element_by_xpath("//*[@text='测听报告列表']

选择所有兄弟元素,而不仅仅是跟随元素

查找带有文本的元素,然后在其上方的许多级别中选择元素

如何通过匹配xslt中的id来确定元素的级别?