testing mobile apps for accessibility -...
TRANSCRIPT
Testing Mobile Apps for Accessibility
Jonathan Avila
Chief Accessibility Officer
SSB BART Group
Current Standards and Guidelines
• Look to WCAG 2, CVAA, Section 508, 255 and EN301549
• Organizational standards try to fill in gaps
– BBC standards and guidelines
– Funka Nu (mobile app dev and navigation guidelines)
– IBM Web checklist maps to WCAG includes iOS updates
• Platform development guides
• Some guidelines blur accessibility and usability
• Mobile Accessibility Task Force (MATF) @ WAI: Goals
• Sufficient Techniques,
• Best practices,
• Advisory techniques
Creating Organizational Testing Approach
• Create standards
– Use standards based on WCAG
– Fill in gaps – look at differences
• Identify technology platforms (browsers, mobile devices)
– iOS, Android, Windows Phone 8
• Identify test process, technical tests
– Test steps and tools
– Know what is possible, APIs available on platform
– Know what is not possible on platform
• Functional tests
– Assistive technologies and users with disabilities
Key Differences: Touch
• Touch access
– Alternative touch input with screen reader
– Limited keyboard access on iOS (input only and VO)
• AssistiveTouch and Switch control
• Android keyboard access
– No system wide AssistiveTouch or switch control
• Touch target size
• Space between touch controls
• Interaction on touch up
• Lack of hover or other discovery tools to know what’s
interactive – swipe in from side
Key Differences: Device
• Responsive
– Test different versions on multiple devices
– Navigation menus/image alt text/tables
– Form labels may disappear
• Text resize/page zoom
• Browser inconsistencies/differences
• Video programming – display of captions
• Android
– Custom keyboards
– Custom UIs
– Manufacturer specific accessibility features
Testing Tools
• Identify Content type
– Native, web based, on PhoneGap, etc.
• Lack of on-device testing tools
• Adobe Edge Inspect (mobile web)
– See live mobile document object model (DOM)
– Testing color and contrast by taking screenshots
• Accessibility Inspector (Xcode)
• Lint (Eclipse)
• Android has accessibility node tree and supported third
party accessibility services - lends itself to a testing tool
• Use assistive technology for technical testing
Technical Testing with AT
• Inventory what info is exposed through the accessibility API
by listening to and looking at the order and semantics of the
text from VoiceOver and Talkback.
– Identify the different possible properties for each control
type
• iOS switch can have a label and a value of on or off
• Android text input has hint and setLabelFor
– Note the order of what is spoken
– Talkback can display what is announced
– Make sure to enable options like captions and
accessibility settings before testing
Functional Testing
Evaluate core tasks via use cases:
• E.g. Compose an email from contact, read an email, reply
Test
• Operation without sight
• Operation without hearing
• Operation without speech
• Operation with low vision without hearing
• Operation with limited reach and strength
• Operation with limited dexterity
• Operation with prosthesis
• And so forth