This document outlines Bayat's standards and procedures for comprehensive accessibility testing across all digital products.
- Introduction
- Accessibility Standards
- Testing Approach
- Automated Testing
- Manual Testing
- Assistive Technology Testing
- User Testing
- Reporting and Documentation
- Remediation Process
- Integration with Development Lifecycle
- Testing Environments
- Platform-Specific Considerations
Accessibility testing ensures our products are usable by people with disabilities and meets regulatory requirements. This includes verifying that products are:
- Perceivable: Information is presented in ways all users can perceive
- Operable: Interface components are navigable and usable by all
- Understandable: Information and operation are clear and consistent
- Robust: Content is compatible with current and future assistive technologies
- Legal Compliance: Meet requirements like ADA, Section 508, and AODA
- Market Reach: Serve the 15-20% of the population with disabilities
- Brand Reputation: Demonstrate commitment to inclusivity
- Better UX for Everyone: Accessibility improvements benefit all users
- Cost Efficiency: Early detection reduces remediation costs
Standard | Applicability | Compliance Level |
---|---|---|
WCAG 2.1 | All digital products | AA (minimum) |
Section 508 | US federal agencies and contractors | Required for government work |
EN 301 549 | EU digital products | Required for EU operations |
ADA | US-based products and services | Required for US operations |
- Refer to WCAG Understanding Documents for official interpretations
- Apply the POUR principles (Perceivable, Operable, Understandable, Robust)
- When conflicts arise between standards, apply the more stringent requirement
Our accessibility testing follows a pyramid approach:
- Foundation: Automated testing for high coverage of basic issues
- Middle: Manual expert testing for more complex issues
- Top: Assistive technology testing and testing with users with disabilities
Prioritize testing based on:
- Criticality of the feature
- User impact of potential accessibility issues
- Complexity of the interface
- Likelihood of accessibility issues based on technology used
Development Stage | Testing Type | Frequency |
---|---|---|
Design | Accessibility reviews | Every major design iteration |
Development | Automated testing | Continuous/daily |
Development | Developer manual tests | For complex components |
Sprint completion | Accessibility testing | Each sprint |
Pre-release | Full accessibility audit | Before each major release |
Post-release | Ongoing monitoring | Monthly |
Platform | Primary Tools | Secondary Tools |
---|---|---|
Web | Axe-core, Lighthouse | WAVE, Pa11y |
iOS | Xcode Accessibility Inspector | XCUITest with accessibility |
Android | Accessibility Scanner, Espresso | TalkBack automated tests |
Windows | Accessibility Insights | Windows Narrator API tests |
PAC 3, Adobe Acrobat Pro | PDF Accessibility Checker |
- Integrate accessibility testing in CI/CD pipelines
- Break builds for critical accessibility issues (WCAG Level A)
- Flag warnings for Level AA issues
- Generate accessibility reports with each build
- Track accessibility debt over time
Ensure automated tests check for:
- Proper heading structure
- Alternative text for images
- Color contrast ratios
- Form labels and instructions
- Keyboard focus indicators
- ARIA usage and landmark regions
- Reading order and tab order
- Frame titles
- Language settings
Develop systematic manual test protocols for:
-
Keyboard Navigation:
- Tab order follows logical sequence
- Focus is clearly visible at all times
- No keyboard traps
- All functionality is keyboard accessible
- Shortcut keys don't conflict with assistive technology
-
Content Structure:
- Proper heading hierarchy
- Meaningful link text
- Lists used appropriately
- Tables have proper headers
- Reading order is logical
-
Visual Design:
- Text resizes without loss of content
- Content reflows on zoom
- Interface works in different orientations
- Content readable at high contrast
-
Multimedia:
- Captions for video content
- Transcripts for audio
- Audio descriptions when needed
- Controls are accessible
Document specific test cases for:
- User login and authentication
- Form submission processes
- Navigation systems
- Search functionality
- Media players
- Interactive elements (dropdowns, tabs, modals)
- Data visualization components
- Notification systems
Use detailed checklists by component type:
- Forms and form controls
- Navigation menus
- Modal dialogs
- Carousels
- Auto-complete widgets
- Date pickers
- Custom components
Platform | Primary AT | Secondary AT |
---|---|---|
Windows | NVDA | JAWS, Windows Narrator |
macOS | VoiceOver | |
iOS | VoiceOver | Switch Control |
Android | TalkBack | Switch Access |
All | Keyboard only | Voice control |
For each assistive technology:
- Create user flows for key tasks
- Document expected behavior
- Test using assistive technology
- Document actual behavior
- Identify and report discrepancies
Maintain a compatibility matrix showing:
- Which assistive technologies are supported
- Level of support for each feature
- Known limitations
- Workarounds for issues
- Partner with disability organizations
- Build a diverse panel of users with disabilities
- Ensure representation across disability types:
- Visual impairments
- Mobility impairments
- Cognitive disabilities
- Hearing impairments
- Speech disabilities
-
Planning:
- Define clear test objectives
- Create realistic scenarios
- Select appropriate participants
- Prepare accessible test materials
-
Execution:
- Set up accessible testing environment
- Provide multiple communication options
- Allow extra time if needed
- Record sessions (with consent)
-
Analysis:
- Document barriers encountered
- Categorize issues by severity
- Map issues to WCAG criteria
- Identify patterns across participants
Guidelines for both approaches:
-
Remote:
- Ensure testing platform is accessible
- Test connection and AT compatibility before session
- Have backup communication channels
- Provide clear instructions in advance
-
In-person:
- Ensure physical accessibility of testing location
- Allow participants to use their own AT when possible
- Be prepared to provide accommodations
- Create a comfortable environment
Document each issue with:
- Description of the issue
- Steps to reproduce
- Impact on users
- Related WCAG criteria
- Severity rating
- Screenshots/recordings
- Assistive technology affected
- Recommended solution
Severity | Definition | Response Time |
---|---|---|
Critical | Prevents task completion for users with disabilities | Immediate fix required |
High | Significantly impairs user experience but has workarounds | Fix in current sprint |
Medium | Causes difficulty but doesn't prevent task completion | Schedule for near-term fix |
Low | Minor inconvenience or technical violation with minimal impact | Add to backlog |
Standard report sections:
-
Executive Summary:
- Overall compliance status
- Key findings
- Risk assessment
- Recommended priorities
-
Methodology:
- Standards applied
- Testing tools used
- Testing approach
- Environments tested
-
Detailed Findings:
- Categorized by severity
- Mapped to WCAG criteria
- Affected user groups
- Impact descriptions
-
Remediation Plan:
- Recommended fixes
- Resource requirements
- Proposed timeline
- Success criteria
Prioritize remediation based on:
- Impact on users
- Severity of the issue
- Frequency of feature use
- Technical complexity of the fix
- Regulatory requirements
For each remediated issue:
- Retest using the same method that identified the issue
- Verify fix works across all relevant platforms
- Ensure fix doesn't introduce new accessibility issues
- Document the resolution and update status
- Document common issues and solutions
- Create accessible pattern library
- Share learnings in design and development reviews
- Maintain accessibility knowledge base
- Use accessible design components
- Review wireframes and mockups for accessibility
- Create accessibility annotations in design files
- Perform early accessibility evaluations
- Use accessible coding patterns
- Implement automated accessibility testing
- Perform developer self-testing
- Include accessibility acceptance criteria in stories
- Include accessibility in test plans
- Perform specialized accessibility testing
- Block release for critical accessibility issues
- Track accessibility metrics
- Include accessibility status in release notes
- Update accessibility conformance documentation
- Communicate known issues and workarounds
- Plan for addressing accessibility debt
Platform | Minimum Coverage | Preferred Coverage |
---|---|---|
Desktop browsers | Latest 2 versions of Chrome, Firefox, Safari, Edge | Add IE11 if required |
Mobile browsers | Latest 2 versions of Safari iOS, Chrome Android | Add Samsung Internet |
Screen sizes | 320px, 768px, 1024px, 1440px | Add additional breakpoints |
Operating systems | Windows 10, macOS, iOS, Android | Add Windows 11, Linux |
Standardize testing environments with:
- Consistent browser extensions
- Calibrated displays
- Standardized assistive technology versions
- Documented tool configurations
- Virtual machine templates for testing
- Test with and without JavaScript
- Verify WAI-ARIA implementation
- Check responsive behavior
- Test with screen magnification
- Verify print stylesheets
- Test with platform accessibility services
- Verify custom controls have proper accessibility implementations
- Test in different orientations
- Check touch target sizes
- Verify compatibility with external keyboards
- Test with platform accessibility APIs
- Verify keyboard interface and shortcuts
- Check high contrast themes
- Test with screen magnification
- Verify proper focus handling
- Check tag structure
- Verify reading order
- Test bookmarks and navigation
- Verify form fields accessibility
- Check for OCR on scanned content