Automated accessibility testing tools are valuable, but they only catch about 30% of accessibility issues. The other 70%? They require human testingβideally with the same assistive technologies your users rely on. Screen readers are the most critical tool in this testing arsenal.
Why Screen Reader Testing Matters
Screen readers convert visual content into speech or Braille output, enabling blind and visually impaired users to navigate the web. But they only work well when websites are built with proper semantic structure.
Testing with a screen reader reveals issues that automated tools miss:
- Whether your content makes sense when read linearly
- If interactive elements are properly announced
- Whether users can navigate efficiently using headings and landmarks
- If dynamic content updates are communicated
- Whether custom widgets are actually usable
The Major Screen Readers
Three screen readers dominate the market. For thorough testing, you should test with at least two of them:
NVDA (Windows) β Free
NonVisual Desktop Access (NVDA) is the most popular free screen reader. It's open-source, regularly updated, and used by approximately 30% of screen reader users.
- Platform: Windows
- Cost: Free (donation-supported)
- Download: nvaccess.org
- Best for: Primary Windows testing, budget-conscious teams
JAWS (Windows) β Commercial
Job Access With Speech (JAWS) is the most widely-used commercial screen reader, particularly in enterprise environments. About 40% of screen reader users rely on JAWS.
- Platform: Windows
- Cost: ~$1,000/year (40-minute demo mode available free)
- Download: freedomscientific.com
- Best for: Enterprise testing, comprehensive coverage
VoiceOver (macOS/iOS) β Built-in
VoiceOver comes pre-installed on all Apple devices. It's the standard for Mac and iPhone users, making it essential for mobile accessibility testing.
- Platform: macOS, iOS, iPadOS
- Cost: Free (included with operating system)
- Activation: System Preferences β Accessibility β VoiceOver
- Best for: Mac users, iOS mobile testing
Getting Started with NVDA
NVDA is the best starting point for screen reader testing. It's free, well-documented, and representative of how many blind users browse the web.
Installation
- Download NVDA from nvaccess.org
- Run the installer and follow the prompts
- Choose "Install on this computer" for regular testing
- NVDA will start automatically after installation
Essential NVDA Keyboard Commands
NVDA uses the Insert key as its modifier (called the "NVDA key"). Here are the commands you'll use most:
Basic Navigation:
β/ββ Read next/previous lineTabβ Move to next focusable elementShift + Tabβ Move to previous focusable elementEnterorSpaceβ Activate buttons/linksNVDA + ββ Start reading from current positionCtrlβ Stop speaking
Quick Navigation (single-key shortcuts):
Hβ Jump to next heading1-6β Jump to heading of that levelDβ Jump to next landmark/regionKβ Jump to next linkFβ Jump to next form fieldBβ Jump to next buttonTβ Jump to next tableGβ Jump to next graphic/image
Add Shift to any quick navigation key to go backwards (e.g., Shift + H for previous heading).
NVDA + N to open the NVDA menu, then Tools β Speech Viewer to see a text log of everything NVDA says. This is invaluable for testing.
Your First NVDA Test
Follow this checklist for basic screen reader testing:
- Load your page β NVDA should announce the page title
- Press H repeatedly β Navigate through all headings. Do they make sense? Is the hierarchy logical?
- Press D repeatedly β Navigate through landmarks. Are main, navigation, and footer regions defined?
- Press Tab repeatedly β Go through all interactive elements. Is the order logical? Can you tell what each element does?
- Press G repeatedly β Check images. Do they have meaningful alt text?
- Test forms β Navigate to form fields. Are labels announced? Can you complete and submit the form?
Testing with VoiceOver on Mac
VoiceOver is already on your Macβyou just need to turn it on.
Activation
- Quick toggle: Press
Cmd + F5 - Settings: System Preferences β Accessibility β VoiceOver
Essential VoiceOver Commands
VoiceOver uses Control + Option as its modifier (called "VO"). Most testers hold these keys with their left hand.
Basic Navigation:
VO + β/VO + ββ Move to next/previous elementVO + Spaceβ Activate current elementVO + Aβ Read from current positionCtrlβ Stop speakingTabβ Move to next focusable element
Web Navigation (use with VO + U for Rotor):
VO + Uβ Open Rotor (then use β β to switch categories)VO + Cmd + Hβ Jump to next headingVO + Cmd + Jβ Jump to next form controlVO + Cmd + Lβ Jump to next linkVO + Cmd + Tβ Jump to next table
The VoiceOver Rotor
The Rotor (VO + U) is VoiceOver's most powerful feature. It displays lists of headings, links, form controls, landmarks, and more. Use arrow keys to navigate these lists, then press Enter to jump to that element.
Testing with VoiceOver on iOS
Mobile accessibility testing is crucialβover 60% of web traffic is mobile. VoiceOver on iOS uses touch-based gestures.
Activation
- Settings: Settings β Accessibility β VoiceOver
- Shortcut: Enable "Accessibility Shortcut" to triple-click the side button
Essential iOS VoiceOver Gestures
- Swipe right β Move to next element
- Swipe left β Move to previous element
- Double-tap β Activate current element
- Two-finger swipe down β Read from current position
- Two-finger tap β Stop speaking
- Rotor: Rotate two fingers on screen to change navigation mode (headings, links, etc.), then swipe up/down to navigate that category
What to Test For
When testing with screen readers, focus on these key areas:
1. Page Structure
- Is there a descriptive page title?
- Are headings used properly (H1 β H2 β H3, no skipped levels)?
- Are landmark regions defined (main, nav, footer, etc.)?
- Does the content make sense when read linearly?
2. Navigation
- Can you reach all interactive elements with Tab?
- Is the tab order logical?
- Can you tell where you are at all times (focus indication)?
- Can you skip repetitive navigation with a skip link?
3. Links and Buttons
- Is link text meaningful out of context? (Not "click here")
- Are buttons clearly labeled?
- Do icons have accessible names?
4. Images
- Do meaningful images have descriptive alt text?
- Are decorative images hidden from screen readers?
- Are complex images (charts, infographics) adequately described?
5. Forms
- Is every field labeled?
- Are required fields indicated?
- Are error messages announced and associated with fields?
- Can you complete and submit the form using only keyboard?
6. Dynamic Content
- Are modals/dialogs announced when they open?
- Is focus managed properly when content changes?
- Are status messages (success, error) announced via live regions?
Creating a Screen Reader Testing Checklist
Here's a simplified checklist you can use for each page:
- β Page title is descriptive and unique
- β All headings are logical and properly nested
- β Landmark regions are defined
- β Skip link is present and functional
- β All interactive elements are keyboard accessible
- β Tab order is logical
- β Focus is visible at all times
- β Links have meaningful text
- β Images have appropriate alt text
- β Form fields are properly labeled
- β Error messages are associated with fields
- β Dynamic content changes are announced
- β Modals trap and manage focus correctly
Tips for Effective Testing
- Turn off your monitor β Even for a few minutes, this helps you understand the screen reader experience
- Slow down the speech rate β When learning, reduce speed in settings
- Use the speech viewer β Text logs help identify issues
- Test in multiple browsers β Screen reader behavior can vary by browser
- Document issues clearly β Note the screen reader, browser, and exact steps to reproduce
Beyond Testing: Building Accessible from the Start
Screen reader testing should ideally happen throughout development, not just at the end. The earlier you catch issues, the cheaper they are to fix.
Consider:
- Including accessibility in your definition of "done"
- Running quick screen reader tests during code review
- Training developers to use screen readers regularly
- Partnering with users who rely on assistive technology for user testing
Key Takeaways
- Automated tools catch only ~30% of accessibility issuesβscreen reader testing finds the rest
- NVDA (free) and VoiceOver (built-in) are excellent starting points for testing
- Focus on page structure, navigation, links, images, forms, and dynamic content
- Test with at least two different screen readers for confidence
- Even brief screen reader testing reveals major accessibility barriers
- Build testing into your development process, not just the end