Automated a11y testing in CI and its limits
building a11y checks into CI while knowing their ceiling.
axe-core in unit and story tests, fail the build on violations, plus manual screen-reader and keyboard testing.
What's really being asked
This checks whether you can operationalize accessibility in CI and whether you understand that automation has a hard ceiling.
The full answer
Wire automated checks into the pipeline at several layers. Use a linter such as eslint-plugin-jsx-a11y to catch static issues at commit time. Run axe-core against each component, typically through its Storybook stories or in jest or testing-library tests, so violations fail the build. Add color-contrast assertions and snapshot the rendered ARIA structure. Gate pull requests so new violations cannot merge, and report results visibly. Crucially, state the limits: automated tools reliably detect only a portion of WCAG issues, roughly a minority of real-world barriers. They cannot evaluate whether focus order is logical, whether labels are meaningful, whether content makes sense to a screen reader, or whether interactions feel usable. So complement automation with manual keyboard navigation, screen-reader testing, and periodic audits.
The mistakes people make
Treating a passing axe scan as proof of compliance. Running checks only locally and not gating CI. Ignoring that contrast and dynamic content need extra handling. Forgetting manual testing entirely.
What usually comes next
Which issues can automation never catch? How do you stop flaky a11y tests? How do you budget manual audit time across many components?
A concrete example
A pull request adds a Menu component. CI runs jest-axe on its stories and fails because triggers lack accessible names. The dev fixes the labels and the build passes. Before release, a human still tests arrow-key navigation and a screen reader, catching that focus does not return to the trigger on close, which axe never reported.
Interview question
A component library's CI runs axe-core on every component and all checks pass. What can you correctly conclude?
- a.Automated rules found no violations, but manual and screen-reader testing are still requiredCorrect
- b.The components are fully WCAG compliant and need no further testing
- c.Keyboard focus order is guaranteed to be logical
- d.Screen-reader announcements are verified as meaningful
Why? this is the answer
Automated tools catch only a subset of accessibility issues, so a clean run means no detected violations, not full compliance. Judging focus order quality and meaningful labels requires manual and assistive-technology testing.
Just read this? Test yourself on what you have been reading.
Read the original → design.va.gov
Put your scrolling time to good use
Learn one idea, try a quiz and save useful cards for revision. Tezvyn makes it easy to learn and stay current in your tech field, a few minutes at a time.
The iPhone app is on the way
We are building it. Until it lands, nothing here is held back from you: every interview card, your saved cards, streaks and the job board all work in Safari, plus hundreds of free practice quizzes of thirty questions each. Sign in and it all carries over to the app the day it arrives.
Want it as an icon? Tap Share at the bottom of Safari, then Add to Home Screen. It opens full screen and the cards you have read stay available offline.
We are hiring for this. Open roles that interview on accessibility — each one lists the topics its interview covers.
See open roles