appium学习笔记03-xpath定位

725 阅读1分钟

1.什么是 XPath?

XPath 是一门在 XML 文档中查找信息的语言。XPath 用于在 XML 文档中通过元素和属性进行导航。XPath 使用路径表达式来选取 XML 文档中的节点或者节点集。

2.Xpath基本规则

表达式 描述
/ 从根节点选取
// 从匹配选择的当前节点选择文档中的节点,而不考虑它们的位置
. 选取当前节点
.. 选取当前节点的父节点
@ 选取属性
* 匹配任何节点
@* 匹配任何属性节点

3.Xpath轴

轴名称 结果
ancestor 选取当前节点的所有先辈(父、祖父等)。
ancestor-or-self 选取当前节点的所有先辈(父、祖父等)以及当前节点本身。
attribute 选取当前节点的所有属性。
child 选取当前节点的所有子元素。
descendant 选取当前节点的所有后代元素(子、孙等)。
descendant-or-self 选取当前节点的所有后代元素(子、孙等)以及当前节点本身。
following 选取文档中当前节点的结束标签之后的所有节点。
namespace 选取当前节点的所有命名空间节点。
parent 选取当前节点的父节点。
preceding 选取文档中当前节点的开始标签之前的所有节点。
preceding-sibling 选取当前节点之前的所有同级节点。
self 选取当前节点。

4.举例

1)一般有中文名的text是唯一的,可以通过text文本定位直接用text属性

//*[@text='text文本属性名']

2)如果元素id是唯一的,也可以id属性定位

//*[@resource-id='id属性名']

3)模糊匹配的定位

//*[contains(@text, "注册/登录")]

4)点击下面水印图片后的开关

//*[@text='水印图片']/../following-sibling::*[1]/*[1]