Gulp plugin for aXe utilizing WebDriverJS
npm install gulp-axe-webdriver
> Gulp plugin for aXe utilizing WebDriverJS.
Inspired by grunt-axe-webdriver and gulp-axe-core.
This plugin checks local and remote urls, using the Chrome browser via chromedriver.
```
$ npm install --save-dev gulp-axe-webdriver
`js
var gulp = require('gulp');
var axe = require('gulp-axe-webdriver');
gulp.task('axe', function() {
var options = {
saveOutputIn: 'allHtml.json',
urls: ['http://www.foobar-url-1/', 'http://www.foobar-url-2/']
};
return axe(options);
});
`
`js
var gulp = require('gulp');
var axe = require('gulp-axe-webdriver');
gulp.task('axe', function() {
var options = {
saveOutputIn: 'allHtml.json',
urls: ['src/file2.html']
};
return axe(options);
});
`
#### With Headless Chrome
`js
var gulp = require('gulp');
var axe = require('gulp-axe-webdriver');
gulp.task('axe', function() {
var options = {
saveOutputIn: 'allHtml.json',
headless: true,
urls: ['src/file2.html']
};
return axe(options);
});
`
#### With Glob patterns
`js
var gulp = require('gulp');
var axe = require('gulp-axe-webdriver');
gulp.task('axe', function() {
var options = {
saveOutputIn: 'allHtml.json',
urls: ['src/*.html', 'http://www.foobar-url-2/']
};
return axe(options);
});
`
Default value:
`js
{
errorOnViolation: false,
folderOutputReport: 'aXeReports',
headless: false,
saveOutputIn: '',
scriptTimeout: 60000,
showOnlyViolations: false,
tags: null,
threshold: 0,
urls: [],
verbose: false
}
`#### a11yCheckOptions
Type:
ObjectSpecifies options to be used by axe.a11yCheck. Will override any other configured options. See axe-core API documentation for information on its structure.
#### errorOnViolation
Type:
BooleanDefault value:
falseIt throws an error on violation from aXe, useful for CI environments if you want to break the build if any new violations are in your results.
#### exclude
Type:
StringDefault value:
nullAdd a CSS selector to the list of elements to exclude from analysis.
#### folderOutputReport
Type:
StringDefault value:
aXeReportsAn optional folder to indicate where the output will be saved.
#### headless
Type:
BooleanDefault value:
falseTo run the Chrome browser in Headless mode.
#### include
Type:
StringDefault value:
nullAdds a CSS selector to the list of elements to include in analysis.
#### saveOutputIn
Type:
StringDefault value: ''
An optional file to which the results of the accessibility scans will be written as a JSON Array of results objects.
#### scriptTimeout
Type:
NumberDefault value:
60000Number of milliseconds for WebDriver to wait before timing out an injected script.
#### showOnlyViolations
Type:
BooleanDefault value:
falseReturns only the results with the accessibility issues.
#### tags
Type:
String or Array[String]Default value:
nullWhich tags to filter violations on.
#### threshold
Type:
NumberDefault value:
0A number that represents the maximum number of allowable violations. Each violation represents a rule that fails, it may fail for an number of nodes. It is recommended that this value not be changed.
A negative value will prevent failure whatever the number of violations.
#### urls
Type:
Array[String]Default value:
[]An Array of URLs that will be tested. The default value is an empty array, you must supply at least one URL in order to successfully complete this task.
Can also be a glob pattern;
#### verbose
Type:
BooleanDefault value:
false`Show status of the analysis.
Read the full changelog.
MIT © Felix Zapata