Testing
We default to Test-driven development (TDD) where possible and keep tests focused on one responsibility at a time.
TDD loop
- Focus on one responsibility.
- RED: define contracts and APIs without implementation.
- RED: write exhaustive tests (they should fail initially).
- GREEN: implement the minimum code to pass tests.
- REFACTOR: improve general code quality.
Why this matters
The loop promotes continuous verification and encourages clean decomposition.
Read more
See TDD: Red, Green, Refactor for a refresher.
Accessibility checks
Accessibility checks are part of testing, not optional polish.
- Verify keyboard navigation with
TabandShift+Tab: focus order should be sequential, intuitive, and aligned with WCAG guidance. - Use WCAG 2 Overview as the baseline standard reference and validate against
WCAG 2.2 AAA. - All developers are expected to install and use
axe DevToolsto catch hidden accessibility issues that are easy to miss manually. - In
axe DevTools, use these required settings:Best Practices:Enable- Accessibility standard:
WCAG 2.2 AAA
- Install links:
- Run accessibility checks during development, not only before release.
- Prioritize recurring checks on accessibility-critical workflows:
- Form-heavy flows (signup, checkout, onboarding, settings).
- Authentication and account recovery flows (login, MFA, password reset).
- Navigation patterns (menus, dialogs/modals, tabs) with full keyboard and focus coverage.
- Search, filtering, and data-heavy interfaces (results pages, tables, pagination).
- Error handling and validation states (inline errors, toast/alert messages, empty states).
- Use WAI-ARIA Authoring Practices Guide (APG) as a reference for accessible interaction patterns.
Automation
You can automate a large portion of accessibility checks in CI with axe-based tooling.