app自动化测试(iOS)元素定位(新手篇)

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

PredicateString定位

样本元素截图:


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

元素属性

比较运算符

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

label == "SYSTEM (TEXT)"

逻辑运算符

AND,OR,NOT,AND等同于&&;OR等同于||;NOT等同于!
例如:

label == "SYSTEM (TEXT)" AND enabled == true
label == "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"

其他定位请参考 App 控件定位章节哦,如果大家有其他想了解的知识点也可以在下方留言哦!小编尽量满足大家的需求哈~

内容全面升级,4 个月 20+ 项目实战强化训练,资深测试架构师、开源项目作者亲授 BAT 大厂前沿最佳实践,带你一站式掌握测试开发必备核心技能(对标阿里P6+,年薪50W+)!直推 BAT 名企测试经理,普遍涨薪 50%+!

:arrow_down: 点击“阅读原文”,提升测试核心竞争力!
原文链接