Keyboard-only testing is the practice of navigating and operating a website
or application using only a keyboard, without a mouse or pointer device. It
is one of the most effective manual accessibility tests available — fast to
perform, requires no specialist software, and catches a category of failures
that automated tools cannot detect.
[1]
Who benefits from keyboard testing
Testing by keyboard simulates the experience of:
- Users with motor disabilities who cannot use a mouse
- Screen reader users, who navigate primarily by keyboard
- Power users who prefer keyboard navigation for efficiency
- Users of switch access devices and other alternative input methods
[2]
Setup
No specialist software is required. Before starting:
- Disconnect or physically move your mouse out of reach — this prevents
accidentally reaching for it during the test
- Use Chrome, Firefox, or Edge on Windows, or Safari on macOS
- On macOS, enable full keyboard access: System Settings → Keyboard →
Keyboard navigation (toggle on)
- Clear any browser extensions that might interfere with Tab focus
Core keyboard shortcuts
| Key |
Action |
| Tab |
Move focus to next interactive element |
| Shift + Tab |
Move focus to previous interactive element |
| Enter |
Activate links, submit forms, activate buttons |
| Space |
Activate buttons, toggle checkboxes, scroll page |
| Arrow keys |
Navigate within components (menus, tabs, sliders, radios) |
| Escape |
Close dialogs, dismiss menus, cancel actions |
| Home / End |
Jump to first or last item in a list or table |
| Page Up / Down |
Scroll the page |
Step by step testing process
Step 1 — Test the skip link
Load the page and immediately press Tab once. The very first element to
receive focus should be a skip link labelled "Skip to main content" or
similar. It should become visible on focus.
Press Enter to activate it. Then press Tab once more — focus should land
inside the main content area, not back at the top of the navigation. If
it does not, the skip link is broken.
[1]
Step 2 — Tab through the entire page
Press Tab repeatedly from the top of the page. At each stop, verify:
- Focus is visible — there is a clear visual indicator showing which
element has focus
- Focus order is logical — focus moves top to bottom, left to right,
following the visual layout
- Every interactive element receives focus — links, buttons, inputs,
checkboxes, selects, and custom widgets should all be reachable
- No element traps focus unexpectedly — Tab always moves forward
Step 3 — Activate every interactive element
For each interactive element that receives focus:
- Press Enter on links — verify they navigate to the correct destination
- Press Enter or Space on buttons — verify the expected action occurs
- Type into text inputs — verify input is accepted
- Press Space on checkboxes — verify they toggle
- Use arrow keys on radio groups — verify selection changes
- Press Enter or Space on custom widgets — verify they respond correctly
Step 4 — Test dialogs and overlays
Open any modal dialogs, dropdown menus, or overlays on the page:
- Verify focus moves into the dialog or menu on open
- Tab through the dialog — verify focus does not escape to the page behind
- Press Escape — verify the dialog closes
- After closing, verify focus returns to the element that triggered the dialog
Step 5 — Test forms
Navigate to any forms on the page:
- Tab to each field — verify the label is clear from context
- Tab past required fields without completing them and attempt to submit
- Verify error messages appear and are reachable by keyboard
- Verify you can navigate to and correct each error without reloading the page
Step 6 — Test navigation and menus
For dropdown navigation menus:
- Tab to the menu trigger — verify it receives visible focus
- Activate with Enter or Space
- Navigate menu items with arrow keys or Tab
- Press Escape to close the menu
- Verify focus returns to the trigger on close
[3]
What to record
For each failure found, record:
- The page URL
- The element involved (describe it or copy its visible label)
- What happened
- What should have happened
- The relevant WCAG success criterion
Tools such as a11ytest.ai can detect many keyboard-related failures
automatically — including skip link behaviour, positive tabindex values,
and modal focus management — but manual keyboard testing remains essential
for verifying the full experience.
Common failures to look for
- No skip link, or skip link does not move focus correctly
- Focus is invisible (outline: none applied globally)
- Focus order does not match visual order
- Interactive elements not reachable by Tab
- Modal dialogs that do not trap focus
- Focus not returned after closing dialogs
- Custom widgets that only respond to mouse clicks
- Dropdown menus that cannot be closed with Escape
References
-
W3C Web Accessibility Initiative. Understanding Success Criterion 2.1.1: Keyboard.
https://www.w3.org/WAI/WCAG22/Understanding/keyboard.html
↑
-
W3C Web Accessibility Initiative. Keyboard Compatibility.
https://www.w3.org/WAI/perspective-videos/keyboard/
↑
-
WebAIM. Keyboard Accessibility.
https://webaim.org/techniques/keyboard/
↑