get to prod tasks
This commit is contained in:
82
tasks/android-production/19-accessibility-audit.md
Normal file
82
tasks/android-production/19-accessibility-audit.md
Normal file
@@ -0,0 +1,82 @@
|
||||
# 19. Accessibility Audit (TalkBack)
|
||||
|
||||
meta:
|
||||
id: android-production-19
|
||||
feature: android-production
|
||||
priority: P2
|
||||
depends_on: []
|
||||
tags: [testing, accessibility, compliance]
|
||||
|
||||
objective:
|
||||
- Ensure the Android app is fully accessible with TalkBack and meets WCAG 2.1 AA mobile guidelines
|
||||
|
||||
deliverables:
|
||||
- TalkBack audit report
|
||||
- Accessibility labels on all elements
|
||||
- Dynamic Type support
|
||||
- Color contrast verification
|
||||
|
||||
steps:
|
||||
1. Audit all screens with TalkBack:
|
||||
- Enable TalkBack (Settings → Accessibility)
|
||||
- Navigate every screen using swipe gestures
|
||||
- Verify all interactive elements have labels
|
||||
- Verify logical reading order
|
||||
- Test with eyes closed
|
||||
2. Add missing accessibility labels:
|
||||
- Add contentDescription to all Image composables
|
||||
- Add semantics { contentDescription = "..." } to icons
|
||||
- Group related elements with mergeDescendants
|
||||
- Add state descriptions for toggles
|
||||
3. Test Dynamic Type:
|
||||
- Enable largest font size in Settings
|
||||
- Test all screens at largest text size
|
||||
- Verify no truncation or overlap
|
||||
- Use scrollable containers where needed
|
||||
4. Verify color contrast:
|
||||
- Test all text/background combinations
|
||||
- Ensure 4.5:1 ratio for normal text
|
||||
- Ensure 3:1 ratio for large text and UI components
|
||||
- Test in both light and dark themes
|
||||
5. Test Switch Access:
|
||||
- Enable Switch Access
|
||||
- Verify all actions reachable
|
||||
- Test focus traversal order
|
||||
6. Test keyboard navigation:
|
||||
- Navigate with Bluetooth keyboard
|
||||
- Verify Tab order logical
|
||||
- Verify Enter/Space activation
|
||||
7. Add automated tests:
|
||||
- Use AccessibilityScanner for quick checks
|
||||
- Add Compose semantics tests
|
||||
- Test with uiautomator
|
||||
|
||||
tests:
|
||||
- Manual: Full TalkBack navigation of all screens
|
||||
- Automated: AccessibilityScanner results
|
||||
- Visual: Color contrast verification
|
||||
|
||||
acceptance_criteria:
|
||||
- All interactive elements have content descriptions
|
||||
- TalkBack reads logical description for every element
|
||||
- Dynamic Type supported at all sizes
|
||||
- Color contrast ≥4.5:1 for all text
|
||||
- Switch Access navigable
|
||||
- Keyboard navigation works
|
||||
- No accessibility warnings in lint
|
||||
- Accessibility audit report completed
|
||||
- Screenshots at largest font size showing no issues
|
||||
- Compose semantics tests passing
|
||||
|
||||
validation:
|
||||
- Turn on TalkBack → navigate entire app without visual
|
||||
- Enable largest font size → all screens readable
|
||||
- Check contrast → all combinations pass
|
||||
- Run AccessibilityScanner → no suggestions
|
||||
- Lint check → no accessibility warnings
|
||||
|
||||
notes:
|
||||
- Compose has good accessibility by default but custom composables need attention
|
||||
- Use Modifier.semantics { } for custom accessibility
|
||||
- Test on physical device — emulator TalkBack is limited
|
||||
- Consider hiring accessibility consultant for thorough audit
|
||||
Reference in New Issue
Block a user