wdio-axe
Version:
Module to inject and analyze web pages in webdriverio using aXe
117 lines (75 loc) • 2.58 kB
Markdown
`aXe` is the accessibility engine for automated testing of HTML-based
user interfaces. These hints run the recommended set of WCAG 2.1
Level A and Level AA rules from [axe-core](https://github.com/dequelabs/axe-core/).
This module uses axe-core API to inject, configure and analyze web pages rendered by wdio by providing sync bindings.
By default, `wdio-axe` runs against all the
[](https://www.w3.org/TR/WCAG21/) Level A and Level AA rules included in
[](https://github.com/dequelabs/axe-core/) with `document` as the target.
These rules are grouped based on their assigned category within `axe-core`.
First download the package:
```console
npm install wdio-axe --save-dev
```
Here is an example script returns violations with tags "wcag2a", "wcag2aa"
```javascript
let aXe = require('wdio-axe');
let result = aXe.getViolations();
console.log(result);
```
Here is an example script returns best practice which can be adopted to provide better accessibility.
```javascript
let aXe = require('wdio-axe');
let result = aXe.getBestPractice();
console.log(result);
```
Here is an example script returns the list of all rules carried out for performing accessibility.
```javascript
let aXe = require('wdio-axe');
let result = aXe.getRules();
console.log(result);
```
Here is an example script returns the list of rules based on tags.
```javascript
let aXe = require('wdio-axe');
let result = aXe.getRules(["wcag2a", "wcag2aa"]);
console.log(result);
```
Here is an example script to modify axe configuration.
```javascript
let aXe = require('wdio-axe');
aXe.runConfig({
reporter: { reporter: "v1" }
});
```
Here is an example script to reset all axe configuration to default.
```javascript
let aXe = require('wdio-axe');
aXe.reset();
```
Here is an example script to run axe with custom tag.
```javascript
let aXe = require('wdio-axe');
let result = aXe.analyseWithTag(["best-practice"]);
console.log(result);
```
Here is an example script to run axe with context enabled.
```javascript
let aXe = require('wdio-axe');
let result = aXe.analyseWithContext([{include: [['#iframe']]}]);
console.log(result);
```
* [Deque University](https://dequeuniversity.com/)
* [Axe Rules](https://dequeuniversity.com/rules/axe/3.3)
* [Web Accessibility Initiative (WAI)](https://www.w3.org/WAI/)