写点什么

软件测试 / 测试开发丨 app 自动化测试(iOS)元素定位(新手篇)

作者:测试人
  • 2023-03-21
    北京
  • 本文字数:620 字

    阅读完需:约 2 分钟

获取更多相关知识

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

PredicateString 定位

样本元素截图:



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

元素属性

  • type: 元素类型,等同于 className

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

  • label: 与 name 一致

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

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

比较运算符

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

例如:

label == "SYSTEM (TEXT)"
复制代码

逻辑运算符

ANDORNOTAND等同于&&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*"
复制代码

其他

BEGINSWITHENDSWITHCONTAINS

例如:

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

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

发布于: 刚刚阅读数: 4
用户头像

测试人

关注

专注于软件测试开发 2022-08-29 加入

霍格沃兹测试开发学社,测试人社区:https://ceshiren.com/t/topic/22284

评论

发布
暂无评论
软件测试/测试开发丨app自动化测试(iOS)元素定位(新手篇)_软件测试_测试人_InfoQ写作社区