Saleem Rahman discusses accessibility QA testing on iOS devices

Using VoiceOver in QA accessibility testing on iOS

VoiceOver is a gesture based screen reader, which is built into all of the iOS eco system, such as iPhones, iPads and Apple watch. Blind and visually impaired users interact with the devices using their fingers to navigate the iOS interface. For example, to launch an app the user would locate the app on the screen first and then they will double tap with a single finger to launch the desired app. The user can interact with the app in a number of ways, using their finger to explore the app and they will get text to speech feedback about the app’s elements and the other way is to navigate using flicking left to go back an item, or right to go forward an item.

Using the Rotor

To navigate around websites using different elements, for example, you would first need to use the rotor, which is a way to toggle between different options such as headings, links, form controls and so on. So how do we use the rotor? First you would use two fingers and place them on the screen, move them in a clock motion like you are moving a physical dial. By the way I have never experience in moving a dial on a phone but what my dad says it is basically a circle with numbers on them and you move them around to dial a number back in those days.

Using Zoom Magnification

Zoom magnifies the entire screen of iOS. To zoom items on the interface, double tap with three fingers to zoom whatever area you want to zoom.

These accessibility features allow developers to make their app accessible to be used by blind and visually impaired users.

Steps to test the app for accessibility issues:

  1. First of all, turn on VoiceOver, go to Settings > General > Accessibility > VoiceOver and toggle it to on. While you are there, make sure that Speak Hints is enabled also.
  2. Launch the app to be tested.
  3. Tap the top of the screen with four fingers, this will bring VoiceOver focus to the top.
  4. Flick to the right through all elements on the app’s home screen.

Some things to then consider when you search through and explore the app or site that you are testing.

A. Are all controls labelled in a way that makes sense when you listen to VoiceOver, would a VoiceOver user understand the functions of the on-screen elements. Take notes when you think a VoiceOver user will not understand some elements such as Graphics, charts, maps and any other elements that may need special consideration in order to provide equal accessibility.

B. Are you able to choose all buttons and other relevant controls by double tapping them as you hear them read by VoiceOver? In other words, if a sighted person would choose an element by tapping, does it operate correctly if double tapped by a VoiceOver user? Take notes if an element does not behave the same as expected.

C. Does VoiceOver stay focused throughout the user interface? Make notes if VoiceOver focus jumps to different elements or is skipping elements.

D. When one or more items in a list is highlighted or selected, does VoiceOver announce selected or provide any information of its status? Make notes of any lists where VoiceOver doesn’t announce highlighted or selected status.

E. Can Items in a list be refreshed using VoiceOver by swiping three fingers down from the top? If it is the same behaviour that a sighted user can perform. Take notes if it does not update the list.

F. Are all elements available to VoiceOver? Take care in listening to items that are skipped while flicking through the items. Take notes if any items are skipped (not herd by VoiceOver).

G. Are there any VoiceOver equivalents for all custom gestures? Make notes if there are app features that require use of custom gestures that are not available to VoiceOver users through alternative techniques.

H. If visual cues, such as colour are important, does VoiceOver provide the same information? If a user is clothes shopping, does VoiceOver provide details such as the colour and style of the shirt? Make notes of things that VoiceOver does not provide important information that sighted users will take for granted.

I. Are all elements presented to VoiceOver in a logical order as you move through the screen? If the relationship between elements is important, is it clearly presented to VoiceOver? Make notes if anything is presented out of place visually.

J. Are any hints provided for elements that might need more information to the user such as double tap to play? Make notes if additional help might be provided to help the user to know how to interact with an element.

K. Does a two-finger scrub gesture provide an escape function that is in the left-hand corner of the screen to go back a screen. Take notes when this functionality does not work.

  • 5. Flick to the left through the same home screen. Make notes of issues that do not work with VoiceOver.
  • 6. Tap the top of the screen with four fingers.
  • 7. Flick to the right, one element at a time, and double tap the first item where choosing it should lead to another screen.
  • 8. Repeat steps 3 through 5 on every screen the app contains, testing and noting any issues found with all elements.

Using the notes obtained from testing, make all bug fixes necessary to deliver a fully accessible experience for users who rely on VoiceOver. Consider prioritizing the correction of accessibility bugs according to the order suggested in step 4.