Protokollierung mit axe-DevTools-Node-APIs

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Verwendung des @axe-devtools/logger-Pakets zur Protokollierung von Barrierefreiheitsergebnissen

Not for use with personal data

Es gibt nahezu unbegrenzte Möglichkeiten, die Ergebnisse eines Axe DevTools-Scans zu nutzen

Alle von axe-core gesteuerten Barrierefreiheitsprüfungen können so eingerichtet werden, dass sie ihre Ergebnisse als JSON-Objekt zurückgeben. Dieses Format ist leicht für Webbarrierefreiheitsneulinge verständlich, enthält die detaillierten Informationen, die erfahrene Fachexperten benötigen, und ermöglicht die automatische Berichtsgenerierung und benutzerdefinierte Tests auch außerhalb eines standardmäßigen, an Assertions basierenden Testformats.

Axe DevTools Logger

Wenn Sie keine Berichte in einem der angebotenen Formate erstellen möchten, aber Ihre Ergebnisse dennoch speichern wollen, bietet Deque eine Komponente namens Axe DevTools Logger an, die dies für Sie übernimmt. Mit diesem Modul können Sie Ihre Testergebnisse inline mit dem Ausführen Ihrer Tests in eine Datei schreiben.

Für die Installation sind die gleichen Authentifizierungsinformationen erforderlich wie bei jedem anderen auf NodeJS basierenden Axe DevTools-Komponent. Weitere Informationen finden Sie im Installationshandbuch für die Methode, die Sie ursprünglich zur Installation von Axe DevTools verwendet haben.

Um den Logger zu installieren, führen Sie den Befehl npm install @axe-devtools/logger für npm oder yarn add @axe-devtools/logger für yarn aus.

Verwendung des Axe DevTools Logger

Der Logger wird wie folgt importiert:

const { AxeDevToolsLogger } = require('@axe-devtools/logger');

Zusätzlich können Sie das Paket mit ES6-Modulen importieren:

import { AxeDevToolsLogger } from '@axe-devtools/logger';

Sobald es importiert ist, können Sie es wie folgt instanziieren

const logger = new AxeDevToolsLogger('Report Name', '/path/to/a/directory');

Nachdem Sie einen Scan durchgeführt und ein Ergebnisobjekt generiert haben, können Sie das Ergebnis mit diesem Befehl in eine Datei protokollieren

logger.logTestResult('\<test-name>', results-object);

Die protokollierte Datei wird in dem Verzeichnis erscheinen, das Sie beim Instanziieren des Loggers mit einem Dateinamen von Test-Reports-<test-name>.json angegeben haben.

Ergebnisübersicht

Die folgenden Abschnitte beschreiben die Objekte, die im Ergebnis-JSON-Dokument enthalten sind.

Meta

Das Ergebnisobjekt beginnt mit nützlichen Metainformationen. Dazu gehören der Name des Tests, die Webadresse der getesteten Seite, Datum und Uhrzeit, zu der der Test durchgeführt wurde, das verwendete axe-core-Regelset und mehr.

Ergebnisse

Der Anfang der Ergebnisse ist durch die Überschrift „Ergebnisse“ markiert. Es gibt vier Ergebnisarten, jede mit ihrem eigenen Array. Diese Ergebnisarten sind nicht anwendbar, unvollständig, bestanden und Verstoß. Zusätzlich befinden sich einige testspezifische Daten direkt vor dem Verstoß-Array.

Nicht anwendbar

Nicht anwendbar bedeutet, dass es keinen Seiteninhalt gab, der für diesen speziellen Test relevant war, wie z. B. formularbezogene Tests auf einer Seite ohne Formulare.

Unvollständig

Unvollständige sind Tests, die durchgeführt wurden, deren Ergebnisse jedoch einer weiteren Überprüfung bedürfen, um festzustellen, in welche Kategorie die Ergebnisse letztendlich fallen sollten. Ein häufiges unvollständiges Auftreten sind Farbkontrastprüfungen an Elementen mit variablen Farb-Hintergründen, bei denen nicht immer klar ist, ob ein ausreichender Kontrast erreicht wird. Probleme in dieser Kategorie sollten nicht automatisch als Verstöße behandelt werden, da sie es möglicherweise sind oder nicht. Für Benutzer mit mehr Fachwissen im Bereich Barrierefreiheit kann eine tiefere Untersuchung dieser Ergebnisse helfen, weitere Verstöße zu finden, die nicht automatisch getestet werden können.

Bestanden

Diese Gruppe von Ergebnissen zählt die Regeln auf, bei denen keine verwandten Zugänglichkeitsverstöße gefunden wurden. Zu jeder bestandenen Regel gibt es ein Array von Seitenelementen, die gegen die Regel geprüft und bestanden wurden.

Verstöße

Das Verstöße-Array enthält alle bei dem Scan gefundenen Zugänglichkeitsverstöße. Dank der Null-Fehlalarm-Politik von Deque ist jedes hier gefundene Ergebnis garantiert echt. Jeder Verstoß enthält weitere Informationen darüber, was der Verstoß ist, wo er sich auf der Seite befindet, Vorschläge zu seiner Behebung und mehr. Weitere Informationen finden Sie in der nachstehenden Feldreferenz.

Feldreferenz – Bestanden und Verstöße

Die Felder, die in den Objekten bestanden und verstöße enthalten sind, werden unten aufgelistet:

  • beschreibung — Textzeichenfolge, die beschreibt, was die Regel bewirkt
  • hilfe — Hilfetext, der den durchgeführten Test beschreibt
  • hilfeUrl — URL, die weitere Informationen zu den Details des Verstoßes bietet. Verlinkt zu einer Seite auf der Deque University-Website.
  • id — Eindeutiger Bezeichner für die Regel; siehe die Liste der Regeln.
  • auswirkung — Wie schwerwiegend der Verstoß ist. Kann bei einem fehlgeschlagenen Test einer der Werte gering, moderat, ernst oder kritisch sein oder null, wenn die Prüfung bestanden wurde
  • tags — Array von Tags, denen diese Regel zugeordnet ist. Diese Tags können in der Optionsstruktur verwendet werden, um auszuwählen, welche Regeln ausgeführt werden (siehe attest.a11yCheck-Parameter).
  • nodes — Array aller Elemente, die durch die Regel getestet wurden
    • html — HTML-Code-Snippet des Elements
    • auswirkung — Wie schwerwiegend der Verstoß ist. Kann bei einem fehlgeschlagenen Test einer der Werte gering, moderat, ernst oder kritisch sein oder null, wenn die Prüfung bestanden wurde
    • ziel — Array von Selektoren, das jedes Element einem Niveau des iframes oder frame zuordnet. Gibt es ein iframe oder frame, sollten zwei Einträge im Ziel sein. Gibt es drei iframe-Niveaus, sollten vier Einträge im Ziel sein.
    • any — Array von Prüfungen, die durchgeführt wurden, bei denen mindestens eine bestanden haben muss. Jeder Eintrag im Array enthält:
    • id — Eindeutiger Bezeichner für diese Prüfung. Prüfungs-IDs können mit Regel-IDs identisch sein
    • auswirkung — Wie schwerwiegend diese spezifische Prüfung ist. Kann einer der Werte gering, moderat, ernst oder kritisch sein. Jede Prüfung, die Teil einer Regel ist, kann unterschiedliche Auswirkungen haben. Die höchste Auswirkung aller nicht bestandenen Prüfungen wird für die Regel gemeldet
    • meldung — Beschreibung, warum diese Prüfung bestanden oder nicht bestanden hat
    • daten — Zusätzliche Informationen, die spezifisch für die Art der Prüfung sind und optional sind. Beispielsweise enthält eine Farbkontrastprüfung die Vordergrundfarbe, Hintergrundfarbe, den Kontrastverhältnis usw.
    • bezogeneNodes — Optionales Array mit Informationen zu anderen Knoten, die mit dieser Prüfung in Zusammenhang stehen. Beispielsweise würde ein Verstoß gegen die Überprüfung doppelter IDs die anderen Selektoren auflisten, die diese gleiche doppelte ID hatten. Jeder Eintrag im Array enthält die folgenden Informationen:
      • ziel — Array von Selektoren für den verwandten Knoten
      • html — HTML-Quelle des zugehörigen Knotens
    • all — Array von Prüfungen, die durchgeführt wurden, bei denen alle bestanden werden müssen. Jeder Eintrag im Array enthält die gleichen Informationen wie das any-Array
    • none — Array von Prüfungen, die durchgeführt wurden, bei denen alle nicht bestanden werden dürfen. Jeder Eintrag im Array enthält die gleichen Informationen wie das any-Array

Darüber hinaus erleichtert das JSON-Ergebnisobjekt das Schreiben eigener benutzerdefinierter Tests. Neben den Standarddurchsetzungsbehauptungen zur Barrierefreiheit können Sie das Ergebnisobjekt nach Verstößen, deren Schweregrad, deren Auswirkungen, dem zugehörigen Regelwerk oder einem der Parameter im Ergebnisobjekt sortieren. Alle im Ergebnisobjekt dargestellten Daten können daher getestet werden.

Nächste Schritte

Deque macht es einfach, die Ergebnisse Ihrer Scans mit unserem Berichtstool zu teilen und zu verarbeiten. Es kann so konfiguriert werden, dass HTML-, JUnit XML- oder CSV-Berichte erstellt werden, und sobald es eingerichtet ist, liefert es Berichte automatisch. Siehe der Berichtleitfaden für Informationen zur Einrichtung und Verwendung des Berichtstools.

Sie können Ihre Ergebnisse auch an Axe Developer Hub hochladen. Siehe Verwendung der CLI zum Versenden von Barrierefreiheitsergebnissen an den Axe Developer Hub.