Appium利用xpath查找同级节点兄弟节点方法

news/2024/11/13 4:11:54/

当页面存在两个文件夹,结构相同,只有文件夹名称不同时,想要点击某一个文件夹上的某个控件。这个时候需要使用xpath定位。

1.由父节点定位子节点

driver.findElementByXPath(//XCUIElementTypeCell/XCUIElementTypeStaticText[@name="标签"])
图中可以看出标签元素的父节点classname为<XCUIElementTypeCell>,标签节点的classname为<XCUIElementTypeStaticText>属性name的值为标签。所以最终的xpath路径为//XCUIElementTypeCell/XCUIElementTypeStaticText[@name="标签"]
这样就可以通过父节点找到子节点,标签文件夹,再使用click(),就可以实现点击进入标签文件夹

 

2.由兄节点查找弟节点

图可以看到标签文件夹以及呵呵文件夹都是<XCUIElementTypeCell>的子节点。但是标签文件夹位于呵呵文件夹的上方,为呵呵文件夹的兄节点。查找标签文件夹并点击很简单,因为其属性name值唯一。图中三个点代表的就是更多,两个文件夹最右边的三个点是完全一样的,则需要通过兄节点来查找弟节点。
driver.findElementByXPath("//XCUIElementTypeStaticText[@name=\"标签\"]/following-sibling::XCUIElementTypeButton[@name=\"更多\"]")
具体格式为"//兄节点/follwing-sibling::弟节点"

 

3.由弟节点查找兄节点

driver.findElementByXPath("//XCUIElementTypeButton[@name=\"更多\"]/preceding-sibling:://XCUIElementTypeStaticText[@name=\"标签\"]")
体格式为

//弟节点/preceding-sibling::/兄节点
本文章只是介绍当界面上存在一些不好定位的元素的xpath定位具体的写法。大部分的元素通过name,id等都可以很简单的定位。


http://www.ppmy.cn/news/258356.html

相关文章

Numpy、Pandas使用大全与各参数详解

目录 一、numpy 1、属性、方法与操作 &#xff08;1&#xff09;属性 &#xff08;2&#xff09;方法 &#xff08;3&#xff09;操作 2、文件读取与保存 &#xff08;1&#xff09;文件读取 &#xff08;2&#xff09;文件保存 3、矩阵生成 二、Pandas 1、属性与方…

【Java se】为什么大部分小数在计算机中是不精确的

目录 一、什么是小数 二、浮点数在计算机中的转换规则 &#xff08;1&#xff09;整数部分转换步骤 &#xff08;2&#xff09; 小数部分转换步骤 三、使用代码说明 四、手动转换小数 一、什么是小数 在计算机中&#xff0c;也称小数为浮点数&#xff0c;因为在使用科学计…

常见的USB VID

常见的USB VID&#xff1a;&#xff08;遇到再更新&#xff09; 03f0 Hewlett-Packard040a Kodak Co.04b8 Seiko Epson Corp.0eef D-WAV Scientific Co., Ltd1234 附所有VID&#xff1a;&#xff08;来自http://www.linux-usb.org/usb.ids&#xff09; ## List of USB ID…

【京东电商网站主界面仿写——HTML第九部分 HTML部分展示结束】

由于这个项目整体的代码较长,所以分成几个部分给大家展示。 比较完整的效果在这里~~【京东网站主界面仿写——使用Html5+CSS3+JavaScript等实现(附源代码和效果),挺炫的喔~~~】 这里先展示第一部分,关于HTML主页界面代码。 这里是主界面显示的第3701行到第4196行代码(至…

python evaluate函数_python 内联函数

python的一些小函数很能提高效率,平时在工作中经常忽视这些内容,而使用很原始粗暴的方法写代码;写了一段时间以后,发现自己的提高很少,要写个小脚本也要纠结半天,跟那些大拿们相差太大;所以要检讨自己,看看自己可以从那方面提高自己的技术能力; 今天首先学习下python的…

通过单反wifi同步照片到Android手机——使用Airnef Python脚本

前言 本人使用的是尼康D750&#xff0c;自带wifi功能&#xff0c;奈何配套的Android App太难用了&#xff0c;至于怎么难用&#xff0c;我这里就不细说了&#xff0c;用过的都懂。总不能白瞎了wifi功能吧。找了一阵子发现了两个第三方通过逆向工程制作的工具。一个是qDslrDash…

A-M进程列表

来源:不详 可惜只找到A~M的&#xff0c;谁有跟贴贴全了它。感觉很有用。计算机操作系统进程程序清单&#xff08;A~M&#xff09;0-9  3CDMINIC.exe → 3Com DMI Agent (DMI Desktop Management Interface). 3Com网络设备检测程序&#xff0c;完全安装3Com驱动后出现  …

Linux下面安装jdk和tomcat

1、jdk的安装 1、上传jdk到 opt目录下面 2、解压jdk tar -xvf jdk-8u281-linux-x64.tar.gz3、一般把jdk放到/usr/local &#xff08;软件的安装都是放到usr下面&#xff09; mv jdk1.8.0_281 /usr/local/4、配置环境变量 找到 /etc/profile 进行编辑修改 export JAVA_HOM…