我正在尝试访问UI测试XCTest中的元素。我可以访问XCTest中的辅助功能标签和值,以获取自动预设的某些UI元素。但是找到了一些没有可访问性标签或值的元素。我想知道在什么情况下不应预设可访问性标签或值,或者我们无法在UI测试中获取值?
我知道一个案例。如果在drawRect方法中绘制元素,则无法访问UI组件。
答案 0 :(得分:1)
通常会为包含文本或值的UI元素自动设置辅助功能标签,例如按钮,标签,文本字段和滑块。
当您编写UI测试时,最佳做法是使用元素的accessibilityIdentifier
而不是accessibilityLabel
。
您应该在要为UI测试访问的每个视图上设置accessibilityIdentifier
。没有预设accessibilityIdentifiers
的观看次数,因此您将完全掌控。
@IBOutlet let signInButton: UIButton!
...
signInButton.accessibilityIdentifier = "signInButton"