WebDriverJS API-referentie voor Axe DevTools voor Web
Referentie voor de API's in het @axe-devtools/webdriverjs-pakket
Constructor
In de standaardconfiguratie is het enige argument dat moet worden doorgegeven aan de Axe DevTools-constructor de WebDriverJS-instantie. Als je een andere versie van axe-core wilt gebruiken dan oorspronkelijk is meegeleverd of een aangepaste regels, kun je deze opties aan de constructor doorgeven.
Je kunt geen niet-standaard axe-core versie selecteren en een aangepaste regelset.
Axe DevTools WebDriverJS constructor:
AxeDevToolsBuilder(driver:WebDriver, String:ruleset|Object:axe (optional))Je moet een instantie van een Selenium WebDriver doorgeven als het eerste argument. Het tweede optionele argument kan een regelsut-ID of een axe object zijn. Als je geen tweede argument biedt, moet je het @axe-devtools/script-builder configuratiebestand voor aangepaste regels configureren, anders zal de constructor een uitzondering opwerpen.
Deze voorbeelden laten zien hoe je de constructor gebruikt:
// instantiate with the Section 508 rule set
const builder = new AxeDevToolsBuilder(driver, '508');
// or with a specific axe instance
const axe = require('../axe-core-2.3.0');
const builder = new AxeDevToolsBuilder(driver, axe);Aangepaste Regels
Voor informatie over het gebruik van aangepaste regels met Axe DevTools voor Web, lees de handleiding over de generatie en integratie van aangepaste regels in de CLI-handleiding.
analyseren
De analyze() methode voert de analyse uit en retourneert de resultaten van de toegankelijkheidsscan.
analyze(): Promise<axe.AxeResults>Voer een analyse uit met de standaardconfiguratie op de gegeven client. Een Promise wordt geretourneerd, die wordt opgelost met de resultatenreeks van toegankelijkheid die door axe-core wordt geretourneerd.
analyzeUniverseel
De analyzeUniversal() methode voert de analyse uit en retourneert de resultaten in het Axe Universele Formaat. De bestaande analyze() methode is ongewijzigd.
analyzeUniversal(): Promise<UniversalExport>Chaining Opties
Er bestaan twee opties voor het afbakenen van je Axe DevTools-scans. Je kunt ervoor kiezen specifieke CSS-scopes in of uit te sluiten. Met de chain-methoden (hieronder) in de constructor is dit mogelijk.
includeren
new AxeDevToolsBuilder(driver).include('<CSS-Selector>');Voegt een CSS-selector toe aan de lijst met elementen die in de analyse moeten worden opgenomen. Elementen buiten de scope die is doorgegeven aan include() zullen niet worden gescand.
uitsluiten
new AxeDevToolsBuilder(driver).exclude('<CSS-Selector>');Voeg een CSS-selector toe aan de lijst met elementen die uitgesloten moeten worden van de analyse. Alleen elementen buiten de scope die is doorgegeven aan exclude() zullen worden gescand.
Deze methoden kunnen worden gekoppeld om de scan-scope verder te verfijnen, zoals hieronder getoond:
new AxeDevToolsBuilder(driver).include('<CSS-Selector>').exclude('<Inner-CSS-Selector>');In dit voorbeeld zouden alle elementen binnen <CSS-Selector> worden gescand, behalve de elementen binnen <Inner-CSS-Selector>.
Regelconfiguratie
De methoden voor regelconfiguratie overschrijven de standaard regelconfiguratie. Bijkomende oproepen met deze methoden zullen voorgaande oproepen overschrijven.
metRegels
De withRules() methode beperkt de analyse tot alleen die regels met de gespecificeerde regel-ID's. Het accepteert een string voor een enkele regel-ID of een array van meerdere regel-ID's.
Deze voorbeelden laten zien hoe je withRules gebruikt met een enkele regel-ID en een array van regel-ID's:
//with a single rule ID
AxeDevToolsBuilder(driver).withRules('html-lang');
//with an array of rule IDs
AxeDevToolsBuilder(driver).withRules(['html-lang', 'image-alt']);metTags
De withTags() methode beperkt de analyse tot alleen die regels die geassocieerd zijn met de verstrekte tag. Accepteert een enkele tag of een array van tags, zoals hieronder getoond:
//with a single tag
AxeDevToolsBuilder(driver).withTags('wcag2a');
//with an array of tags
AxeDevToolsBuilder(driver).withTags(['wcag2a', 'wcag2aa']);disableRegels
AxeDevToolsBuilder.disableRules(rules: RuleID[]): AxeDevToolsBuilderDe disableRules() methode zorgt ervoor dat de array van regels die wordt gegeven, wordt overgeslagen bij het uitvoeren van een analyse.
axe-core opties
opties
.options(options: Axe.RunOptions)De options methode specificeert opties die door axe.run gebruikt zullen worden. Hiermee worden alle andere geconfigureerde opties overschreven, inclusief aanroepen naar withRules en withTags. Zie de axe-core API-documentatie voor informatie.
new AxeDevToolsBuilder(page).options({
checks: { 'valid-lang': ['orcish'] }
});configureren
.configure(config: Axe.Spec)De configure methode injecteert een axe-configuratieobject om de regels voor een analyse aan te passen. Latere aanroepen van deze methode maken eerdere ongeldig door axe.configure() aan te roepen en het configuratieobject te vervangen. Zie axe-core API-documentatie voor de structuur van het object.
Het volgende voorbeeld maakt een nieuwe axe-core configuratie en geeft deze door aan Axe DevTools om te gebruiken voor scannen:
const config = {
checks: [Object],
rules: [Object]
};
const results = await new AxeDevToolsBuilder(page).configure(config).analyze();Gebruik Service
Standaard is de gebruiksservice uitgeschakeld en de standaard URL is https://usage.deque.com.
Omgevingsvariabelen
Deze omgevingsvariabelen stellen u in staat om de gebruiksservice te configureren en de eigenschappen van gerapporteerde gebeurtenissen te wijzigen.
| Naam | Type | Kan Override | Beschrijving |
|---|---|---|---|
AXE_DISTINCT_ID |
String | — | Een UUID-identificator die hetzelfde blijft voor de ingelogde gebruiker (tenzij deze wordt opnieuw gegenereerd) |
AXE_METRICS_URL |
String | — | De URL van het REST-gebruikseindpunt |
AXE_TRACK_USAGE |
Boolean | — | Stelt het gebruik van dienstrapportage in (standaard is false) |
AXE_APPLICATION |
String | false | De applicatie die werd gebruikt om toegankelijkheidsfouten te controleren |
AXE_DEV_INSTANCE |
Boolean | true | Geeft aan of dit evenement afkomstig is van acties van een softwareontwikkelaar. Nuttig voor het markeren en later verwijderen van evenementen die tijdens ontwikkeling of testen zijn geregistreerd. |
AXE_DEPARTMENT |
String | true | De afdeling van de gebruiker binnen de organisatie |
AXE_KEYCLOAK_ID |
String | false | De Keycloak-ID van de gebruiker |
AXE_LOGGED_IN |
Boolean | false | Registreert of de gebruiker is ingelogd op de toepassing onder test |
AXE_ORGANIZATION |
String | true | De organisatie van de gebruiker |
AXE_SESSION_ID |
String | false | Een UUID die de sessie van de gebruiker identificeert |
AXE_USER_ID |
String | false | De identiteit van een specifieke gebruiker, zoals naam of inlog-ID |
AXE_USER_JOB_ROLE |
String | false | De functie van de gebruiker |
AXE_USER_STATUS |
String | false | Statusinformatie die u aan de gebruiker wilt koppelen |
trackingInschakelen
Deze methode stelt gebruikers in staat om ervoor te kiezen om gegevens naar de gebruiksservice te sturen.
.enableTracking(state: boolean)AxeDevToolsBuilder(driver).enableTracking(true)trackingUrlInstellen
Deze methode stelt gebruikers in staat om te wijzigen waar de gebruiksstatistieken worden verzonden.
.setTrackingUrl(url: string)AxeDevToolsBuilder(driver).setTrackingUrl('https://foobar.biz')uniekeIdInstellen
Deze methode stelt gebruikers in staat om de unieke ID die wordt opgeslagen of gebruikt te wijzigen.
.setDistinctId(distinctId: string)AxeDevToolsBuilder(driver).setDistinctId('foobar')