Playwright API-referentie voor Axe DevTools voor Web
Referentie voor de API's in het @axe-devtools/playwright-pakket
Constructor
In de standaardconfiguratie is het enige argument dat aan de constructor moet worden doorgegeven de Playwright-instantie. Als je een andere axe-core-versie dan die oorspronkelijk is opgenomen wilt gebruiken, of een aangepaste regels, kun je deze opties ook aan de constructor doorgeven.
Je kunt geen niet-standaard axe-core-versie selecteren en een aangepaste regels set tegelijkertijd.
Axe DevTools Playwright constructor:
AxeDevToolsBuilder({ page: PlaywrightPage, source: string, rulesetId: AxeDevtoolsRulesetID})Je moet een instantie van PlaywrightPage als eerste argument doorgeven. Het tweede argument kan ofwel een regelsset-ID of een axe-object zijn. Als je geen tweede argument geeft, moet je het @axe-devtools/script-builder-configuratiebestand voor aangepaste regels configureren, anders zal de constructor een uitzondering opwerpen. Moet worden aangeroepen met het sleutelwoord new.
// instantiate with the Section 508 rule set
const builder = new AxeDevToolsBuilder({ page, rulesetId: '508' });
// or with a specific axe instance
const { source } = require('../axe-core-2.3.0');
const builder = new AxeDevToolsBuilder({ page, source });Aangepaste Regels
Voor informatie over het gebruik van aangepaste regels met Axe DevTools, lees de handleiding over het genereren en integreren van aangepaste regels in de CLI-gids
analyze
AxeDevToolsBuilder.analyze(): Promise<axe.Results | Error>Voert een analyse uit en geeft het resultaatobject en eventuele fouten door.
new AxeDevToolsBuilder({ page })
.analyze()
.then(results => {
console.log(results);
})
.catch(e => {
// Do something with error
});analyzeUniversal
AxeDevToolsBuilder.analyzeUniversal(): Promise<UniversalExport>Voert een analyse uit en retourneert de resultaten in het Axe Universal Format. De bestaande analyze() methode blijft ongewijzigd.
new AxeDevToolsBuilder({ page })
.analyzeUniversal()
.then(results => {
console.log(results);
})
.catch(e => {
// Do something with error
});Ketenopties
Er zijn twee opties voor het bepalen van het bereik van je Axe DevTools-scans. Je kunt ervoor kiezen om specifieke CSS-ranges in of uit te sluiten. De onderstaande ketenmethoden maken dit mogelijk. Deze methoden kunnen gecombineerd worden om complexe, gerichte scans te creëren.
include
AxeDevToolsBuilder.include(selector: String | String[])Voegt een CSS-selector toe aan de lijst met elementen die in de analyse moeten worden opgenomen. Elementen buiten het bereik dat wordt doorgegeven aan .include() worden niet gescand.
new AxeDevToolsBuilder({ page }).include('<CSS-Selector>');exclude
AxeDevToolsBuilder.exclude(selector: String | String[])Voegt een CSS-selector toe aan de lijst met elementen die van de analyse moeten worden uitgesloten. Alleen elementen buiten het bereik dat wordt doorgegeven aan .exclude() worden gescand.
Deze methoden kunnen gecombineerd worden om de scope van de scan verder te verfijnen.
new AxeDevToolsBuilder({ page }).exclude('<CSS-Selector>');In dit voorbeeld worden alle elementen binnen <CSS-Selector> gescand, behalve de elementen binnen <Inner-CSS-Selector>:
new AxeDevToolsBuilder({ page }).include('<CSS-Selector>').exclude('<Inner-CSS-Selector>');Regelconfiguratie
Deze opties wijzigen de regelconfiguratie voor de gekozen regels. Deze opties overschrijven de standaardregelconfiguratie en zullen je resultaten wijzigen. Extra oproepen met deze methoden zullen eerdere oproepen overschrijven.
withRules
AxeDevToolsBuilder.withRules(rules: String|Array)Beperkt de analyse tot alleen die met de opgegeven regel-ID's. Accepteert een string van één regel-ID of een reeks van meerdere regel-ID's.
//with a single rule ID
AxeDevToolsBuilder({ page }).withRules('html-lang');
//with an array of rule IDs
AxeDevToolsBuilder({ page }).withRules(['html-lang', 'image-alt']);withTags
AxeDevToolsBuilder.withTags(tags: String|Array)Beperkt de analyse tot alleen die regels die zijn getagd met de opgegeven tag. Accepteert een enkele tag of een reeks tags.
//with a single tag
AxeDevToolsBuilder({ page }).withTags('wcag2a');
//with an array of tags
AxeDevToolsBuilder({ page }).withTags(['wcag2a', 'wcag2aa']);disableRules
AxeDevToolsBuilder.disableRules(rules: String|Array)Slaat de verificatie van de opgegeven regels over. Accepteert een string die een enkele regel-ID vertegenwoordigt of een reeks van meerdere regel-ID's. Bijkomende oproepen naar AxeDevToolsBuilder.options(), AxeDevToolsBuilder.disableRules() zullen de gespecificeerde opties overschrijven.
new AxeDevToolsBuilder({ page }).disableRules('color-contrast');axe-core Opties
Deze opties benaderen de onderliggende axe-core-configuratie. Voor meer informatie over deze opties, zie de axe-core-documentatie.
configuratie
AxeDevToolsBuilder.configure(config: axe.Spec): AxeDevToolsBuilderStel de configuratie voor axe-core in. Deze waarde wordt direct doorgegeven aan axe.configure().
opties
AxeDevToolsBuilder.options(runOptions: axe.RunOptions): AxeDevToolsBuilderOpties om direct door te geven aan axe.run(). Zie de axe-core documentatie voor gebruik. Dit zal alle andere geconfigureerde opties overschrijven, inclusief oproepen naar AxeDevToolsBuilder.withRules() en AxeDevToolsBuilder.withTags().
Gebruik Service
Standaard is de gebruik service uitgeschakeld, en de standaard URL is https://usage.deque.com.
Omgevingsvariabelen
Deze omgevingsvariabelen stellen u in staat om de gebruik service 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 |
enableTracking
Met deze methode kunnen gebruikers ervoor kiezen om gegevens naar de gebruik service te sturen.
.enableTracking(state: boolean)AxeDevToolsBuilder({ page }).enableTracking(true)setTrackingUrl
Met deze methode kunnen gebruikers wijzigen waar de gegevens van gebruiksstatistieken naartoe worden gestuurd.
.setTrackingUrl(url: string)AxeDevToolsBuilder({ page }).setTrackingUrl('https://foobar.biz')setDistinctId
Met deze methode kunnen gebruikers wijzigen welke afzonderlijke ID wordt opgeslagen of gebruikt.
.setDistinctId(distinctId: string)AxeDevToolsBuilder({ page }).setDistinctId('foobar')