Tips For Accessibility Testing Of iOS Apps

Accessible iPhone

Use of mobile devices has skyrocketed over the last five years, and due to Apple’s commitment to provide accessibility, people with disabilities are participating in mobile use as never before. Apple’s apps provided on iOS devices are amazingly accessible including calenders, maps, and even operational items such as battery life and settings. Third-party apps, however, are accessible only if developers created them with accessibility in mind. There are no mandates for app accessibility, no checklists, and little advice for developers. Please see the resources section at the end of this piece for links to existing guidance.

Accessible apps not only benefit people with disabilities but are often helpful as well to older people, people with low literacy or language limitations, and new or infrequent users. You can reach these populations more effectively with accessibility features built into your app. In this paper you will learn how to set up your device for accessibility testing, how to operate your device with VoiceOver turned on, and how to test your app for accessibility.

1. Get Your Device Ready

A. Preferably plug your device in, or at least be sure you have lots of battery life. It may also be helpful to set auto lock to “five minutes” or “never” so you don’t have to unlock the keys if you take a short break. Also, to ensure your device operates well, remove apps from your app switcher by double clicking the home button, press and hold until icons wiggle, and then touch the “x” to delete the app from the switcher.

B. As you design in accessibility features, you will need to test how they work. Fortunately everything you need is right in your device! VoiceOver is Apple’s built-in voice output and is easily turned on by going into Settings/General/ Accessibility, and setting VoiceOver to on. You can then easily toggle VoiceOver on and off by using a three-finger double tap. Another useful method is to “triple click” the home button. On newer devices this appears to be set to “on” by default. If it isn’t set by default here is how you set it:

Settings/General/Accessibility
Set triple click home to “VoiceOver”. Once this is done you can simply triple click the home button to toggle VoiceOver.

C. Under the VoiceOver section, I suggest turning speak hints on, and adjusting the speed and typing feedback to your preference. Under the rotor section I suggest selecting everything except for speech rate, volume, and punctuation. You certainly may desire to check these as well, but simply put, all the other selections facilitate navigation which is necessary for testing purposes.

2. Use the Device with VoiceOver

A. VoiceOver Gestures

Now to use the device you must “double tap” instead of merely touching controls. This is a VoiceOver feature as people who are blind need to touch a control and hear what it is without it activating. One can double tap with the same finger or split tap by touching the screen with a second finger.

Users who are blind use two methods to explore the screen. We move our finger around the screen listening to the controls as they are spoken. Similarly, one can skip from control to control by using a swipe left/right motion. It is important to be sure that each control speaks correctly no matter which method is used. So, on each screen move your finger around and then also swipe through the set of controls being sure they speak correctly, make sense verbally and indicate if they are dimmed or available.

B. Typing with VoiceOver

When entering text with VoiceOver on you must double tap each letter. Alternatively (and usually preferred by blind users) one can change to touch typing which allows you to move around the keyboard until you hear the right letter and then lift your finger to type it. You get audible confirmation that the letter is entered. Using either method, it is important to enter text during your testing as this is an area that is often overlooked, and can be problematic. Please note that the typing mode rotor selection only appears when an edit field is activated.

For more information about using devices with VoiceOver go to Safari/Bookmarks and choose “user guide”

3. Test Your App

A. If you have a tutorial, is it usable with VoiceOver? Some very accessible apps require one to walk through an inaccessible tutorial rendering the app inaccessible!

B. When swiping left/right through controls do they speak correctly including their status, and does the order make sense?

C. If you refer users to manuals, support, or instructions on your web site, can it be easily read via VoiceOver in Safari? Can you navigate easily to various controls like headers, links, buttons and form fields. (See the User Manual regarding using the rotor control to change from one to another). Users turn the rotor to the item desired such as “headers”, then swipe down listening to each header in turn, swiping right to hear the information below the header desired.

D. Be sure to close your app while VoiceOver is on and reopen it. Does VoiceOver still function correctly and does your app still function correctly? Some apps that have audio output experience conflicts when the app is in the app switcher.

E. Do all controls speak correctly including their status when you move your finger around the screen?

F. If you have self-voicing in portions of your app, do advise VoiceOver users that they need to turn VoiceOver off at that point?

G. When the screen changes in your app, does VoiceOver ever lose focus and read improperly or not read content? Also if your app refreshes, can the VoiceOver user easily regain position and operations with VoiceOver?

H. Do all controls that allow for adjustment work easily with VoiceOver?

I. Can text be easily entered into edit fields with VoiceOver using either standard or touch typing?

J. If VoiceOver users have issues they wish to communicate is there a readily accessible scheme to accomplish this?

K. Since many persons who are blind have some useful low vision, does your app behave well if zoom, and/or invert colors are invoked in accessibility settings? Also, might your app be able to employ app settings regarding font, typeface, and background presentation? Given the small size of many iOS devices, such adjustments can be very useful.

L. Examine if you could use “hints” to increase accessibility. Some apps have even developed dynamic hints to provide changeable information.

M. Does your description adequately describe the visual elements like pictures especially when they are used for critical information like instructions?

4. The Big Test

Now, invoke the screen curtain so you cannot see anything on the screen (triple finger triple tap) and use your app. Listen carefully to VoiceOver and try a variety of interactions.

And lastly, if you wish to gather beta testers who are blind VoiceOver users, go to http://www.applevis.com

5. Resources

Making mobile apps for iOS devices accessible to people with disabilities offers many business benefits beyond increased customer base as indicated by this article.

Apple provides this accessibility programming guide for iOS

An easier to digest article is: Accessibility for iPhone and iPad apps

Also this article Making Your iOS App Accessible with VoiceOver from .net magazine is useful.

Testing and debugging iOS accessibility for VoiceOver

From AccessU 2013, slides from the presentation “Introduction to Mobile Accessibility”

Other useful information can be found in:
iPad usability studies

Getting to grips with a mobile accessibility strategy

Note: I’d like to thank Aaron Bangor and Paul J. Adam for their contributions to this piece.

Advertisements

6 comments

  1. Victoria

    Thanks a lot! I will use these recommendations for QA engineers training and encourage them to test mobile apps for accessibility

  2. Trackback: Nedra Zubrzycki
  3. Pingback: Teaching and Testing iOS App VoiceOver Accessibility Webinar – Blind Access Journal

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s