Loggen met axe-DevTools Node-API's
Het @axe-devtools/logger pakket gebruiken voor het loggen van toegankelijkheidsresultaten
Er zijn vrijwel onbeperkte manieren om de resultaten van een Axe DevTools-scan te benutten
Alle door axe-core aangedreven toegankelijkheidsscans kunnen worden ingesteld om hun resultaten als een JSON-object terug te geven. Dit formaat betekent dat het eenvoudig is voor nieuwe gebruikers van webtoegankelijkheid om te begrijpen, het bevat de diepte van informatie die ervaren deskundigen nodig hebben, en het maakt geautomatiseerde rapportgeneratie en aangepaste tests mogelijk, zelfs buiten een standaard op beweringen gebaseerd testformaat.
Axe DevTools Logger
Als je geen rapporten wilt genereren in een van de aangeboden formaten, maar je wilt je resultaten wel opslaan in een bestand, biedt Deque een component om dit voor je te regelen: de Axe DevTools Logger. Met deze module kun je je testresultaten naar een bestand schrijven, terwijl je je tests uitvoert.
Voor de installatie is dezelfde authenticatie-informatie vereist als voor elk ander Axe DevTools-component gebaseerd op nodeJS. Raadpleeg de installatiehandleiding voor de methode die je oorspronkelijk hebt gebruikt om Axe DevTools te installeren voor meer informatie.
Om de logger te installeren, voer de opdracht npm install @axe-devtools/logger uit voor npm of yarn add @axe-devtools/logger voor yarn.
De Axe DevTools Logger gebruiken
De logger wordt als volgt geïmporteerd:
const { AxeDevToolsLogger } = require('@axe-devtools/logger');Daarnaast kun je het pakket importeren met behulp van ES6-modules:
import { AxeDevToolsLogger } from '@axe-devtools/logger';Zodra het is geïmporteerd, kun je het als volgt aanmaken
const logger = new AxeDevToolsLogger('Report Name', '/path/to/a/directory');Nadat je een scan hebt uitgevoerd en een resultatenobject hebt gegenereerd, kun je het resultaat met deze opdracht naar een bestand loggen
logger.logTestResult('\<test-name>', results-object);Het gelogde bestand verschijnt in de directory die je hebt gespecificeerd bij het aanmaken van de logger, met een bestandsnaam van Test-Reports-<test-name>.json.
Resultaten Overzicht
De volgende secties beschrijven de objecten die in het resultaten-JSON-bestand zijn opgenomen.
Meta
Het resultatenobject begint met enkele nuttige meta-informatie. Dit omvat de naam van de test, het webadres van de geteste pagina, de datum en tijd waarop de test is uitgevoerd, het gebruikte axe-core-regelset en meer.
Bevindingen
Het begin van de resultaten wordt gemarkeerd door de kop "bevindingen". Er zijn vier soorten resultaten, elk met hun eigen array. Deze resultaten zijn niet-toepasbaar, onvolledig, geslaagd en overtreding. Bovendien is er specifieke testdata direct voor de overtredingenarray.
Niet-toepasbaar
Niet-toepasbaar betekent dat er geen paginainhoud relevant was voor die specifieke test, zoals formuliertests op een pagina zonder formulieren.
Onvolledig
Onvolledige resultaten zijn tests die zijn uitgevoerd, maar de resultaten vereisen verdere beoordeling om te bepalen in welke categorie de resultaten uiteindelijk moeten vallen. Een veelvoorkomend onvolledig geval is kleurcontrastcontroles op elementen met variabele kleurachtergronden, waar het niet altijd duidelijk is of voldoende contrast is bereikt. Vraagstukken in deze categorie moeten niet automatisch als overtredingen worden beschouwd, omdat ze dat al dan niet kunnen zijn. Voor gebruikers met meer kennis van toegankelijkheid kan een diepere evaluatie van deze resultaten helpen om aanvullende overtredingen te vinden die niet automatisch kunnen worden getest.
Geslaagde Tests
Deze groep resultaten somt de regels op die gecontroleerd zijn en waarbij geen gerelateerde toegankelijkheidsovertredingen werden gevonden. Bij elke geslaagde regel hoort een array van pagina-elementen die aan de regel zijn getoetst en zijn geslaagd.
Overtredingen
De overtredingenarray bevat alle toegankelijkheidsovertredingen die tijdens de scan zijn gevonden. Dankzij het nul-vals-positievenbeleid van Deque is elk resultaat dat hier wordt gevonden gegarandeerd echt. Elke overtreding bevat verder informatie over wat de overtreding is, waar deze zich op de pagina bevindt, suggesties om deze te verhelpen en meer. Zie de veldreferentie hieronder voor meer informatie.
Veldreferentie - Geslaagde Tests en Overtredingen
De velden die in de geslaagde tests en overtredingen objecten zijn opgenomen, worden hieronder opgesomd:
- beschrijving — Tekststring die beschrijft wat de regel doet
- help — Hulptekst die de uitgevoerde test beschrijft
- helpUrl — URL die meer informatie biedt over de details van de overtreding. Linkt naar een pagina op de Deque University-site.
- id — Unieke identificator voor de regel; zie de lijst met regels.
- impact — Hoe ernstig de overtreding is. Kan een van gering, matig, serieus of kritiek zijn als de test is mislukt of null als de controle is geslaagd
- tags — Array van tags die aan deze regel zijn toegewezen. Deze tags kunnen worden gebruikt in de optiestructuur om te selecteren welke regels worden uitgevoerd (zie attest.a11yCheck parameters).
- nodes — Array van alle elementen die door de Regel zijn getest
- html — Fragment van HTML van het Element
- impact — Hoe ernstig de overtreding is. Kan een van gering, matig, serieus of kritiek zijn als de test is mislukt, of null als de controle is geslaagd
- target — Array van selectoren die elk element laten overeenkomen met één niveau van iframe of frame. Als er één iframe of frame is, moeten er twee vermeldingen in target zijn. Als er drie iframe-niveaus zijn, moeten er vier vermeldingen zijn.
- any — Array van checks die zijn uitgevoerd waarbij ten minste één geslaagd moet zijn. Elke invoer in de array bevat:
- id — Unieke identificator voor deze check. Check-id's kunnen hetzelfde zijn als Regel-id's
- impact — Hoe ernstig deze specifieke check is. Kan een van gering, matig, serieus of kritiek zijn. Elke check die deel uitmaakt van een regel kan verschillende impacts hebben. De hoogste impact van alle checks die falen, wordt gerapporteerd voor de regel
- boodschap — Beschrijving van waarom deze check is geslaagd of mislukt
- data — Aanvullende informatie die specifiek is voor het type Check, wat optioneel is. Bijvoorbeeld, een kleurcontrastcheck zou de voorgrondkleur, achtergrondkleur, contrastverhouding, etc. omvatten.
- relatedNodes — Optionele array met informatie over andere nodes die gerelateerd zijn aan deze check. Bijvoorbeeld, een schending van een dubbele id-check zou de andere selectoren vermelden die dezezelfde dubbele id hadden. Elke invoer in de array bevat de volgende informatie:
- target — Array van selectoren voor de gerelateerde node
- html — HTML-bron van de gerelateerde node
- all — Array van controles die zijn uitgevoerd waarbij alles geslaagd moet zijn. Elke vermelding in de array bevat dezelfde informatie als de any-array
- none — Array van controles die zijn uitgevoerd waarbij niets geslaagd mag zijn. Elke vermelding in de array bevat dezelfde informatie als de any-array
Daarnaast maakt het JSON-resultatenobject het eenvoudig om je eigen aangepaste tests te schrijven. Naast de standaardtoegankelijkheidsinbreukasserties kun je het resultatenobject opdelen op basis van inbreuken, hun ernst, hun impact, hun bijbehorende regels, of een van de parameters in het resultatenobject. Alle data die in het resultatenobject zijn uitgezet, kunnen daarom getest worden.
Volgende Stappen
Deque maakt het eenvoudig om de resultaten van je scans te delen en te verwerken met onze rapportage. Het is configureerbaar om HTML-, JUnit XML- of CSV-rapporten te produceren en geeft, eenmaal geconfigureerd, automatisch rapporten terug. Zie de rapporteringshandleiding voor informatie over hoe je de rapportage instelt en gebruikt.
Je kunt je resultaten ook uploaden naar Axe Developer Hub. Zie De CLI gebruiken om toegankelijkheidsresultaten naar Axe Developer Hub te sturen.
