FREEDOM251

Freedom251 › Accessibility Testing Software

jest-axe

Free plan Web

Visit jest-axe Alternatives

jest-axe's own site

What jest-axe is

jest-axe is a free custom Jest matcher that connects axe accessibility checks to automated web tests. Tests pass HTML or DOM elements to axe and assert that no accessibility violations are found. The package can run in CI/CD workflows and includes examples for React, React Testing Library, Vue, Vue Testing Library, and Angular with Nx. Axe options, custom rules and checks, and the impact levels treated as violations can be configured. Its stated coverage is WCAG 2.2. Installation uses npm with Jest, jest-axe, and jest-environment-jsdom as development dependencies. The package requires Node.js 22.13.0 or later, lists Nick Colley as author, and uses the MIT license. Color-contrast checks are disabled because they do not work in JSDOM. Automated checks can miss barriers and cannot establish that a product is accessible, so the project recommends assistive-technology testing and research involving disabled people. Jest fake timers or mocked setTimeout may cause axe-core timeouts; real timers may need temporary restoration.

Who it suits

It suits web developers adding automated accessibility checks to Jest suites and CI/CD pipelines. It is useful for teams working with the listed React, Vue, or Angular setups.

What it does well

  • Free MIT-licensed package
  • Runs accessibility checks in Jest
  • CI/CD integration
  • Configurable axe rules and impact levels
  • WCAG 2.2 coverage

What to know first

  • Color contrast checks disabled in JSDOM
  • No manual review tools
  • No remediation guidance
  • Requires Node.js 22.13.0 or later

Verdict

jest-axe adds configurable axe checks to Jest tests across several web frameworks. It should complement, rather than replace, assistive-technology checks and involvement of disabled users.

Facts from jest-axe's own pages

Accessibility caveat
The project says automated checks do not guarantee an accessible product and recommends testing with assistive technologies and involving disabled people in user research. · github.com, 11 Oct 2026
Automated scans
Yes · github.com, 23 Sept 2026
Automated testing limit
Color contrast checks are disabled because they do not work in JSDOM. · github.com, 11 Oct 2026
Automated testing limits
The project says automated testing misses some access barriers and does not guarantee an accessible product. · github.com, 12 Oct 2026
Browser extension
No · github.com, 23 Sept 2026
CI/CD integration
Yes · github.com, 23 Sept 2026
Color contrast
Color contrast checks do not work in JSDOM and are turned off in jest-axe. · github.com, 12 Oct 2026
Configuration
Users can configure axe options, rules, custom checks, and impact levels. · github.com, 12 Oct 2026
Framework examples
The README includes examples for React, React Testing Library, Vue, Vue Testing Library, and Angular with Nx. · github.com, 11 Oct 2026
Free plan
Yes · github.com, 23 Sept 2026
How it works
It lets tests pass HTML or DOM elements to axe and assert that there are no accessibility violations. · github.com, 11 Oct 2026
Input
The README says to pass anything that outputs HTML to axe. · github.com, 12 Oct 2026
Installation
The README gives an npm install command for jest, jest-axe, and jest-environment-jsdom. · github.com, 12 Oct 2026
Integrations
The README shows examples with React, React Testing Library, Vue Test Utils, Vue Testing Library, and Angular using Nx. · github.com, 12 Oct 2026
License
The repository identifies the project as MIT licensed. · github.com, 12 Oct 2026
Maintainer
The package metadata names Nick Colley as the author. · github.com, 12 Oct 2026
Manual review tools
No · github.com, 23 Sept 2026
Mobile testing
No · github.com, 23 Sept 2026
Purpose
jest-axe is a custom Jest matcher for axe for testing accessibility. · github.com, 12 Oct 2026
Remediation guidance
No · github.com, 23 Sept 2026
Runtime requirement
The package metadata specifies Node.js version 22.13.0 or later. · github.com, 12 Oct 2026
Timer limitation
The README says axe-core can time out when Jest fake timers or mocked `setTimeout` are used, and recommends temporarily restoring real timers. · github.com, 11 Oct 2026
Timers limitation
axe-core does not work when timers such as setTimeout are mocked, and the README recommends temporarily restoring real timers. · github.com, 12 Oct 2026

Where jest-axe stands on Freedom251

Look at these too