- Notifications
You must be signed in to change notification settings - Fork23
Salesforce Automated Accessibility Testing Libraries
License
BSD-3-Clause, Unknown licenses found
Licenses found
salesforce/sa11y
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Automated Accessibility Testing Libraries and Tools (@sa11y packages) based onaxe-core providing support forJest unit tests,Vitest unit tests,WebdriverIO component/integration tests used by teams in Salesforce. However, they are not specific to Salesforce and can be used to test any UIsupported by axe-core for accessibility. These libraries are designed to be flexible, customizable and reusable to support automated accessibility testing in different testing workflows from unit to integration tests.
- Developer Guidelines
- Refer toQuick start instructions to get started, if you are a developer looking to Contribute
- Code of Conduct
- Changelog
- LICENSE
- Automated Accessibility Tests with sa11y | Developer Quick Takes - YouTube
- Automated Accessibility Testing with sa11y | Salesforce Developers Blog
- Get Started with Web Accessibility | Salesforce Trailhead
- Accessibility Overview - Lightning Design System
- LWC Accessibility guide
This repo contains the following packages for automated accessibility testing:
- Provides a
toBeAccessible()
accessibility matcher for Jest- integrates theassertAccessible API with theJest assertion API
- Provides an option to set up the sa11y API to be invoked automatically at the end of each test
- Includes custom results processors for enhanced test reporting and grouping violations by rule
- To add accessibility testing to your Jest tests use this package
- Provides a
toBeAccessible()
accessibility matcher for Vitest - Integrates the core accessibility checking logic with theVitest testing framework
- Supports automatic checks and custom results processing for enhanced test reporting
- Built on the same core logic as the Jest integration via@sa11y/matcher
- To add accessibility testing to your Vitest tests use this package
- Provides
assertAccessible()
,assertAccessibleSync()
APIs that can be used withWebdriverIO to check accessibility of web pages rendered in browsers
- Checks DOM or HTML Element for accessibility issues and throws an error if a11y issues are found
- Supports both violations and incomplete results reporting
- To add accessibility testing to your Javascript unit testsnot using Jest or Vitest, use this package
- Formats raw JSON output of a11y issues fromaxe into an easy to consume format by consolidating and cross-referencing
- Used by assert Accessible API and Jest/Vitest a11y matchers
- Provides exception list filtering and WCAG metadata enhancement
- To use axe directly and want to format the results from
axe.run
use this package - A new formatter
groupViolationResultsProcessor
also made available to group the a11y violations per jest test case as the existing formatter would generate test failures for each violation
- Provides Base, Extended, Full accessibility preset rules asaxe configuration
- The Base preset rule is used by default in the Jest/Vitest a11y matchers and assert Accessible APIs
- The APIs can be overridden to use the Extended or Full ruleset as necessary
- Includes custom rule support and WCAG metadata for enhanced reporting
- Provides the core accessibility checking logic used by Jest and Vitest integrations
- Framework-agnostic programmatic APIs for accessibility testing
- Supports automatic checks, DOM mutation observation, and custom integrations
- Use this package directly for custom test runners or advanced scenarios requiring direct control
- Provides a minified version of selected
@sa11y
libraries to be injected into a browser (using webdriver) and executed from integration testing workflows. - Gives WCAG SC for rulesets in addition withaxe tags
- Supports both Selenium Java and WebdriverIO integration patterns
- Private package providing test utilities, mock data, and common testing patterns for
@sa11y
packages - Includes DOM fixtures with and without accessibility issues for testing
- Private package providing integration tests for
@sa11y
packages across different environments - Ensures cross-package compatibility and end-to-end functionality
- Common utilities, constants, error messages, and helper functions for
@sa11y
packages - Provides shared functionality for environment detection, custom rules, and file processing
A wise person once said…
"Don't talk to me until I've had coffee and you've run axe"
(Image courtesy:@shleewhite,@jorycunningham)
About
Salesforce Automated Accessibility Testing Libraries
Topics
Resources
License
BSD-3-Clause, Unknown licenses found
Licenses found
Code of conduct
Contributing
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors14
Uh oh!
There was an error while loading.Please reload this page.