主页 > IT > > 详情
软件测试 | predicateString定位 世界热讯

哔哩哔哩   2023-06-06 04:11:50

除了通用定位方式外,iOS 还有其他特殊的定位方式,本章节仅介绍 iOS 特有定位,其他定位请参考 App 控件定位章节。

PredicateString 定位

样本元素截图:


【资料图】

使用 PredicateString,基本定位方式是由元素属性名、运算符、目标值组成。

元素属性

type: 元素类型,等同于 className

name: 当前元素的文本信息,一般等于 label

label: 与 name 一致

enabled: 当前元素是否可点击,一般为 true 或 false

visible: 当前元素是否可见,一般为 true 或 false

比较运算符

== , >= , <= , > , < , != , <> ,可用来比较数值或字符串

例如:

label == "SYSTEM (TEXT)"

逻辑运算符

AND , OR , NOT , AND 等同于 && ; OR 等同于 || ; NOT 等同于 !

例如:

label == "SYSTEM (TEXT)" AND enabled == truelabel == "SYSTEM (TEXT)" OR name == "SYSTEM (TEXT)"label == "SYSTEM (TEXT)" && NOT enabled != true

模糊匹配 LIKE

? 和 * 都可以作为通配符, ? 匹配一个字符, * 匹配多个字符。

例如:

label LIKE "SYSTEM (TEXT)"label LIKE "?YSTEM (TEXT)"label LIKE "SYSTEM??TEXT)"label LIKE "* (TEXT)"label LIKE "SYSTEM*"

其他

BEGINSWITH , ENDSWITH , CONTAINS

例如:

# 匹配属性为 label ,value为 SYSTEM 开头的元素label BEGINSWITH "SYSTEM"# 匹配属性为 label ,value为 (TEXT) 结尾的元素label ENDSWITH "(TEXT)"# 匹配属性为 label ,value包含 TEXT 结尾的元素label CONTAINS "TEXT"

精彩推送