Axe DevTools für Web Cucumber
Einrichtung und Nutzung des axe-devtools-cucumber Gems für auf Cucumber basierende Barrierefreiheitstests
Das axe-devtools-cucumber Gem bietet benutzerdefinierte Schrittdefinitionen, um zu bewerten, ob eine gegebene Seite axe-clean ist.
Dieses Gem erweitert sich auf die Schritte bereitgestellt durch das Readme des axe-core-cucumber Gems.
Einrichtung und Nutzung
Stellen Sie sicher, dass Sie Zugang zu Deque's registry haben. Falls nicht, refer to setup.
- Fügen Sie
axe-devtools-cucumberzu Ihrer Gemfile oder gemspec Datei hinzu und führen Siebundle installaus.
gem "axe-devtools-cucumber"spec.add_dependency "axe-devtools-cucumber"- Binden Sie die vom Gem angebotenen Schrittdefinitionen ein. Normalerweise können Sie dies tun, indem Sie zu einer bestehenden Cucumber-Setup-Datei unter
features/support/env.rbhinzufügen.
require 'axe-cucumber-steps'- Verwenden Sie es mit dem WebDriver Ihrer Wahl.
API
Schritt - Sei axe-Clean (be axe clean)
Der Schritt be axe clean ist die Kernkomponente der Integration. Er ist ein vollständiger Schritt für sich und überprüft die aktuell geladene Seite auf axe-clean mithilfe der Standardeinstellungen von axe.run (das gesamte Dokument wird gemäß der Standardregeln überprüft).
Then the page should be axe cleanSchritt - Überprüfe auf Barrierefreiheit (be audited for accessibility)
Dieser Schritt ermöglicht es Ihnen, die Barrierefreiheit Ihrer Seite zu überprüfen, ohne dass die Testsuite fehlschlägt. Für identifizierte violations wandeln die Matcher das Testbeispiel in pending um und geben die detaillierten Verstöße aus.
Then the page should be audited for accessibility [including]
[excluding] [according to/according to ruleset] [checking rules/checking-only-rules]
[skipping rules] [logging results for]Klauseln
Klauseln sind kaskadierbare Methoden für die be axe clean und be audited for accessibility Schrittdefinitionen.
Konfigurierbare Klauseln ermöglichen eine größere Granularität bei Tests und Erwartungen.
within- Einschlussklausel
Die Einschlussklausel (within "#selector") spezifiziert, welche Elemente der Seite überprüft werden sollen. Ein gültiger CSS selector muss bereitgestellt und in doppelte Anführungszeichen gesetzt werden. Kombinierte Selektoren können verwendet werden, um mehrere Elemente auszuwählen, zum Beispiel within "#header, .footer". Weitere Informationen finden Sie im context parameter documentation.
Then the page should be axe clean within "#selector"excluding- Ausschlussklausel
Die Ausschlussklausel (excluding "#selector") spezifiziert, welche Elemente des Dokuments ignoriert werden sollen. Ein gültiger CSS selector muss bereitgestellt und in doppelte Anführungszeichen gesetzt werden. Kombinierte Selektoren können verwendet werden, um mehrere Elemente auszuwählen, zum Beispiel excluding "#widget, .ad". Weitere Informationen finden Sie im context parameter documentation.
Then the page should be audited for accessibility excluding "#selector"Falls gewünscht, kann ein Semikolon (;) oder das Wort but verwendet werden, um die Ausschlussklausel von der Einschlussklausel (falls vorhanden) zu trennen.
Then the page should be audited for accessibility within "main"; excluding "aside"
Then the page should be axe clean within "main" but excluding "aside"according to- Zugänglichkeitsstandard (Tag) Klausel
Die Tag-Klausel spezifiziert, welcher Zugänglichkeitsstandard (oder welche Standards) verwendet werden soll, um die Seite zu überprüfen. Die Zugänglichkeitsstandards werden namentlich (Tag) angegeben. Mehrere Standards können angegeben werden, wenn sie durch Komma getrennt sind, zum Beispiel according to: wcag2a, section508. Die akzeptablen tag names are documented sowie ein complete listing of rules, das jedem Tag entspricht.
Then the page should be audited for accessibility according to: tag-nameFalls gewünscht, kann ein Semikolon (;) verwendet werden, um die Tag-Klausel von der vorherigen Klausel zu trennen.
Then the page should be axe clean within "#header"; according to: best-practicechecking- Prüfrege-Klausel
Die Prüfrege-Klausel spezifiziert, welche zusätzliche Regeln ausgeführt werden sollen (zusätzlich zu den angegebenen Tags, falls vorhanden, oder dem Standardregelset). Die Regeln werden durch Komma getrennte Regel-IDs angegeben.
Then the page should be axe clean checking: ruleIdEine Liste gültiger Regel-IDs finden Sie im rules documentation.
Falls gewünscht, kann ein Semikolon (;) oder das Wort and verwendet werden, um die Prüfrege-Klausel von der vorherigen Klausel zu trennen.
Then the page should be axe clean according to: wcag2a; checking: color-contrast
Then the page should be audited for accessibility according to: wcag2a and checking: color-contrastchecking only- Ausschließende Rege-Klausel
Diese Klausel ist eigentlich keine separate Klausel. Aber durch Hinzufügen des Wortes only zur Prüfrege-Klausel kann die Bedeutung des Schritts geändert werden. Wie oben beschrieben, spezifiziert die Prüfrege-Klausel standardmäßig zusätzliche Regeln, die ausgeführt werden sollen. Wenn das Wort only verwendet wird, dann werden nur die angegebenen Regeln überprüft.
Then the page should be axe clean checking only: ruleIdskipping- Auszulassende Rege-Klausel
Die Auszulassende Rege-Klausel spezifiziert, welche Regeln ausgelassen werden sollen. Dies ermöglicht es, einen Zugänglichkeitsstandard bereitzustellen (über die Tag-Klausel), während eine bestimmte Regel ignoriert wird. Die Regeln werden durch Komma getrennte Regel-IDs angegeben.
Then the page should be audited for accessibility skipping: ruleIdEine Liste gültiger Regel-IDs finden Sie im rules documentation.
Sie können ein Semikolon (;) oder das Wort but verwenden, um die Auszulassende Rege-Klausel von der vorherigen Klausel zu trennen, wie unten gezeigt:
Then the page should be axe clean according to: wcag2a; skipping: accesskeys
Then the page should be audited for accessibility according to: wcag2a but skipping: accesskeysKlauseln, die nur für den Schritt „Auf Barrierefreiheit prüfen“ verfügbar sind
Der be audited for accessibility Matcher bietet Unterstützung für zwei zusätzliche Klauseln.
according to ruleset- Regelset-Klausel
Die Regelset-Klausel [according to ruleset] hilft, ein einzelnes Regelset festzulegen (zum Beispiel 508, wcag2, wcag21), das zum Überprüfen der Seite verwendet wird.
Then the page should be axe clean according to ruleset: wcag2logging results- Ergebniseprotokollierungs-Klausel
Um Ergebnisse vom Basismatcher und den Klauseln zu protokollieren, rufen Sie die kaskadierbare Methode logging results auf, wie unten gezeigt. Die logging results for: report_name Klausel ermöglicht es, den Namen des Berichts festzulegen, der am Ende der Schrittausführung generiert wird.
Then the page should be audited for accessibility logging results for: axe_report_of_my_siteInteroperabilität zwischen Klauseln
Alle beschriebenen Klauseln können mit Method Chaining gemischt und kombiniert werden. Nachfolgend einige Beispiele.
Then the page should be audited for accessibility within "main, header" but excluding "footer"
Then the page should be axe clean excluding "#sidebar" according to: wcag2a, wcag2aa but skipping: color-contrast
Then the page should be audited for accessibility checking only: document-title, label
Then the page should be axe clean according to: best-practice and checking: aria-roles, definition-listErweiterte API-Nutzung
Verweisen Sie auf advanced usage, um zu erfahren, wie Sie die API für Folgendes konfigurieren:
- Benutzerdefinierte Regeln
- Benutzerdefinierter Pfad zur Axe-Quelle
- Nutzungsaufzeichnung
- Berichterstattung
