IOS 自动化测试中常用的定位方式

本贴最后更新于 1344 天前,其中的信息可能已经天翻地覆

IOS_PREDICATE :最常用的定位方式,可以通过属性文本内容进行定位
name=="立即购买" 或 name LIKE "立即*" 等等,可以查下还有几种方式

NAME :name属性有内容的话并且与accessibility id表达式内容一样的话,那可以选择NAME。它的查找速度更快

Accessibility id:绝对唯一,也是常用的定位方式。

XPATH:最不好用的定位方式,但也分情况使用。一般 Selected Element框里显示的xpath定位表示不一定用它的。比如说这个页面只有一个XCUIElementTypeButton,那就直接可以//XCUIElementTypeButton 定位,他给你的可能是更长的中间夹杂着绝对定位的表达式,这样查找就很慢了,可能后面出问题。你也可以自己写一个xpath表达式。xpath不能使用eles,要求xpath表达式就是唯一。其他的可以,但可以在写xpath表达式的时候使用下标。从1开始
image.png
image.png

例子:Selected Element给的XPATH:(//XCUIElementTypeOther[@name="¥2 "])[1] 很不灵活,文本金额是会变的,不适用,可能有的中间夹杂很多绝对定位
自己写的:(//XCUIElementTypeOther[contains(@name,"¥")]) [1] 通过下标定位。
建议实在只能XPATH定位的,中间夹杂绝对定位,表达式很长的。可以自己写个xpath定位

坐标定位:最不想用的定位。只能进行简单的点击操作。不过我们做ios的时候,是会遇到有些控件是抓不到元素的,比如下拉列表,有的话你运气好,没有的话就只能坐标了。

顺序:NAME或CLASS NAME------Accessibility id---------IOS_PREDICATE---------XPATH---------坐标

回帖
请输入回帖内容 ...