
Security News
The Changelog Podcast: Practical Steps to Stay Safe on npm
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.
@sa11y/wdio
Advanced tools
@sa11y/wdioProvides assertAccessible(), assertAccessibleSync() APIs that can be used with WebdriverIO to check accessibility of web pages rendered in browsers.
import { assertAccessible } from '@sa11y/wdio';
describe('demonstrate usage of @sa11y/wdio', () => {
it('should demonstrate usage of assertAccessible API', async () => {
// Navigate to page to be tested
await browser.url('pageToBeTested.html');
// Check for accessibility of the loaded page
await assertAccessible();
});
it('should demonstrate checking a11y of a selected element', async () => {
// Navigate to page to be tested
await browser.url('pageToBeTested.html');
// Check accessibility of a particular element using https://webdriver.io/docs/selectors
await assertAccessible({ scope: browser.$('selector') });
});
it('should demonstrate exception list', async () => {
// Navigate to page to be tested
await browser.url('pageToBeTested.html');
// Exception list is a map of rule to corresponding css targets that needs to be filtered from a11y results
const exceptions = {
'document-title': ['html'],
'link-name': ['a'],
};
// Check for accessibility of the loaded page, filtering out results from given exception list
await assertAccessible({ exceptionList: exceptions });
});
it('should demonstrate custom rules', async () => {
await browser.url('pageToBeTested.html');
// Use extended ruleset for more comprehensive checking
await assertAccessible({ rules: extended });
});
});
Note: WebdriverIO sync mode is deprecated. Please use async mode for new projects.
import { assertAccessibleSync } from '@sa11y/wdio';
describe('demonstrate usage of @sa11y/wdio sync', () => {
it('should demonstrate usage of assertAccessibleSync API', () => {
return sync(() => {
// Navigate to page to be tested
browser.url('pageToBeTested.html');
// Check for accessibility of the loaded page
assertAccessibleSync();
});
});
});
Asynchronous API for checking accessibility in WebdriverIO tests.
Signature:
async function assertAccessible(options?: {
driver?: WebdriverIO.Browser;
scope?: WebdriverIO.Element;
rules?: A11yConfig;
exceptionList?: Record<string, string[]>;
}): Promise<void>;
Parameters:
options (optional): Configuration object
driver: WDIO BrowserObject instance. Created automatically by WDIO test runner.scope: Element to check for accessibility. Defaults to the entire document.rules: Preset rules configuration. Defaults to base ruleset.exceptionList: Map of rule id to corresponding CSS targets to be filtered from results.Synchronous API for checking accessibility (deprecated with WebdriverIO sync mode).
Signature:
function assertAccessibleSync(options?: {
driver?: WebdriverIO.Browser;
scope?: WebdriverIO.Element;
rules?: A11yConfig;
exceptionList?: Record<string, string[]>;
}): void;

FAQs
Accessibility testing API for WebdriverIO
The npm package @sa11y/wdio receives a total of 248 weekly downloads. As such, @sa11y/wdio popularity was classified as not popular.
We found that @sa11y/wdio demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 4 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Learn the essential steps every developer should take to stay secure on npm and reduce exposure to supply chain attacks.

Security News
Experts push back on new claims about AI-driven ransomware, warning that hype and sponsored research are distorting how the threat is understood.

Security News
Ruby's creator Matz assumes control of RubyGems and Bundler repositories while former maintainers agree to step back and transfer all rights to end the dispute.