首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XCUIElement唯一标识符

XCUIElement唯一标识符
EN

Stack Overflow用户
提问于 2018-10-01 19:15:05
回答 2查看 1.2K关注 0票数 1

在XCUITests中,有没有一种唯一的方法来标识跨查询持久存在的给定XCUIElement?

我不能使用标签,因为有时候元素可以有相同的标签。

Hash/hashvalue在给定查询内工作,但在连续查询后刷新。

像往常一样,我找不到关于这个主题的文档:(

EN

回答 2

Stack Overflow用户

发布于 2018-10-02 21:07:20

您可以通过在XCUIElement所代表的UIView对象上设置accessibilityIdentifier来唯一标识它们。

代码语言:javascript
复制
// app code
let button = UIButton()
button.accessibilityIdentifier = "myButton"

// test code
let app = XCUIApplication()
let button = app.buttons["myButton"]
button.tap()

辅助功能标识符仅用于UI测试。它们不是本地化的,您有责任将可访问性标识符设置为您所需的唯一标识符。可访问性标识符将在视图的生命周期中一直存在,除非您的代码显式更改它。

票数 2
EN

Stack Overflow用户

发布于 2018-10-11 00:27:23

我的方法是将indexPath.row添加到字符串的末尾,并将其设置为AccessibilityIdentifier。

代码语言:javascript
复制
self.accessibilityIdentifier = "ProfileTableViewCell-\(indexPath.row)"
self.detailLabel.accessibilityIdentifier = "ProfileTableViewCell-DetailLabel-\(indexPath.row)

我甚至将row值添加到内部单元格元素中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52589906

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档