Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

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

It appears that the Accessibility Identifier property has been added to allow UI automation tests to have a more stable ID. It's recommended to be used instead of the Accessibility Label as the label is used by Screen Readers and VoiceOver.

This makes sense, however:

  1. Why is the Accessibility Identifier included as a translatable string resource when using the Export for localization feature in Xcode? This makes multi-language testing more difficult because it encourages a different ID in each language.
  2. Why is the Accessibility Identifier associated with Accessibility at all? Why not call it UI Automation ID? Does the Accessibility Identifier actually get presented to screen readers, VoiceOver, other?
like image 734
Daniel Avatar asked May 25 '16 21:05

Daniel


1 Answers

After filing a bug with Apple, I got this response:

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

Update: Confirmed fixed in Xcode 8 GM

like image 133
Daniel Avatar answered Oct 20 '22 20:10

Daniel