如果 'Accessibility Identifier' 用于 UI 自动化测试,为什么它包含在本地化资源中?

If the 'Accessibility Identifier' is intended for UI Automation tests, why is it included in localizable resources?

似乎已添加 Accessibility Identifier 属性 以允许 UI 自动化测试具有更稳定的 ID。建议使用它而不是 Accessibility Label,因为屏幕阅读器和 VoiceOver 使用该标签。

这是有道理的,但是:

  1. 为什么 Accessibility Identifier 包含为可翻译的 使用 Export for localization 功能时的字符串资源 Xcode?这使得多语言测试更加困难,因为它鼓励在每种语言中使用不同的 ID。
  2. 为什么 Accessibility Identifier 与 Accessibility 相关联 全部?为什么不叫它 UI 自动化 ID? Accessibility Identifier 是否真的呈现给屏幕阅读器、VoiceOver 等?

向 Apple 提交错误后,我得到了这样的回复:

This is definitely a bug we will fix, and you are correct that it isn’t presented to VoiceOver, or other screen readers

更新: 确认已在 Xcode 8 GM

中修复