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-standaardversie van axe-core 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 als eerste argument doorgeven. Het tweede optionele argument kan ofwel een regelset-ID of een axe object zijn. Indien je geen tweede argument levert, moet je het @axe-devtools/script-builder configuratiebestand voor aangepaste regels configureren, anders zal de constructor een uitzondering geven.
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 het 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 geeft toegankelijkheidsresultaten terug.
analyze(): Promise<axe.AxeResults>Voer een analyse uit met de standaardconfiguratie op de gegeven client. Een Promise wordt geretourneerd, dat zich oplost met de toegankelijkheidsresultaatset die door axe-core wordt geretourneerd.
analyzeUniverseel
De analyzeUniversal() methode voert de analyse uit en geeft resultaten in de Axe Universele Formaat terug. De bestaande analyze() methode blijft 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 van elementen die in de analyse moeten worden opgenomen. Elementen buiten de scope die aan include() is doorgegeven, zullen niet worden gescand.
uitsluiten
new AxeDevToolsBuilder(driver).exclude('<CSS-Selector>');Voeg een CSS-selector toe aan de lijst van elementen die van de analyse moeten worden uitgesloten. Alleen elementen buiten de scope die aan exclude() is doorgegeven, 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 tonen het gebruik van withRules 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 het opgegeven label. Accepteert een enkel label of een array van labels, zoals hieronder weergegeven:
//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 worden geleverd, worden overgeslagen tijdens een analyse.
axe-core opties
opties
.options(options: Axe.RunOptions)De options methode specificeert opties die door axe.run moeten worden gebruikt. Het zal alle andere geconfigureerde opties overschrijven, 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 regelset te wijzigen vóór een analyse. Opvolgende aanroepen naar deze methode zullen eerdere ongeldig maken 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 gebruiksdienst 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 | — | Schakelt het rapporteren van gebruiksservices 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')