API-Referenz
Die API-Referenz für das @axe-core/watcher-Paket
Dieses Referenzhandbuch beschreibt die vom @axe-core/watcher Paket bereitgestellten APIs (auch als axe Watcher oder einfach Watcher bezeichnet).
AxeConfiguration Schnittstelle
Die axe Eigenschaft (ein Parameter, der an die Konfigurationsfunktionen übergeben wird) ist die übliche Möglichkeit, Ihren AxeConfiguration für axe Watcher zu ändern, um Barrierefreiheitstests zu konfigurieren. Die folgenden Eigenschaften sind in AxeConfiguration enthalten:
| Name | Art | Erforderlich | Beschreibung |
|---|---|---|---|
API-Schlüssel |
string |
ja | Das geheime API-Schlüssel Secret Ihres Projekts. |
autoAnalyze |
boolean |
Nein | Ob Watcher automatisch eine Zugänglichkeitsanalyse auf Ihrer Seite durchführt. Der Standardwert ist true. |
Build-ID |
string |
Nein | Der Standardwert ist null, was für einzelne Prozesse (nicht parallelisiert) empfohlen wird. Für parallele Testläufe sollten alle Worker dieselbe, nicht leere Zeichenfolge haben. buildID |
configurationOverrides |
ConfigurationOverrides |
Nein | Ermöglicht das Überschreiben globaler Konfigurationseinstellungen . |
excludeUrlPatterns |
string[] |
nein | Schließt URLs, die den angegebenen Minimatch-Mustern entsprechen, vom Scannen aus. |
runContext |
axe.ElementContext |
Nein | An axe-core weitergegeben. |
runOptions |
RunOptions |
Nein | An axe-core weitergegeben. |
serverURL |
string |
Nein | Der Developer Hub-Server zum Senden von Ergebnissen. Es ist unwahrscheinlich, dass Sie diesen Wert ändern müssen. |
Sitzungs-ID |
string |
Nein | Veraltet. Die Sitzungs-ID dieser Instanz. Es ist unwahrscheinlich, dass Sie diesen Wert ändern müssen. Siehe stattdessen buildId . |
Zeitüberschreitung |
Zeitüberschreitungen |
Nein | Ein Timeouts Objekt, das Millisekunden darstellt, bis die angegebenen Controller Methoden eine Zeitüberschreitung erreichen und fehlschlagen. |
apiKey
Der apiKey Wert ist die einzige Eigenschaft, die in Ihrem AxeConfiguration festgelegt werden muss. Den Wert können Sie der Projektseite entnehmen. Weitere Informationen finden Sie unter Projekte verwalten .
autoAnalyze
Setzen Sie diesen Wert auf false , um die automatische Analyse von Seiten zu verhindern. Weitere Informationen zum manuellen Modus finden Sie unter Steuern, wann die Seitenanalyse erfolgt.
buildID
Die optionale buildID Eigenschaft ermöglicht es, wenn sie nicht gesetzt ist, parallelen Testläufern, Ergebnisse zu generieren, die als einzelner Testlauf im axe Developer Hub angezeigt werden. null Bei parallelen Testläufen sollte jeder Testläufer dieselbe nicht-null Zeichenfolge verwenden, wodurch jeder Testlauf seine Ergebnisse mit vorhandenen Ergebnissen für denselben Git-Commit-SHA verknüpft. buildID buildID Wenn jedoch buildID gesetzt ist null, überschreiben ** mehrere Testläufe vorhandene Ergebnisse, die denselben Git-Commit-SHA haben.**
Normalerweise können Sie von Ihrem Anbieter für kontinuierliche Integration einen verwendbaren buildID Wert erhalten. Sie können beispielsweise diese Werte verwenden:
-
github.run_idVerfügbar in GitHub-Workflows. Weitere Informationen finden Sie unter github context in der GitHub-Dokumentation.
-
CIRCLE_PIPELINE_IDMit CircleCI ist der obige Wert in der Umgebung Ihres Prozesses verfügbar. Weitere Informationen finden Sie unter Integrierte Umgebungsvariablen in der CircleCI-Dokumentation.
Andere Umgebungsvariablen für die kontinuierliche Integration, die Sie für
buildIDverwenden können:
configurationOverrides
(Optional) Überschreibt die in der [globalen Konfiguration] festgelegten Werte(dh-global-configuration). Weitere Informationen finden Sie in der ConfigurationOverrides-Schnittstelle .
excludeUrlPatterns
(Optional) Verhindert die Analyse von URLs, die mit einem der minimatch Muster im excludeUrlPatterns Array übereinstimmen.
axe: {
excludeUrlPatterns: [ 'https://*.example.com/**', 'https://example.org/**' ]
}Sie müssen Ihr Muster mit http:// oder https:// oder einem Stern-Schrägstrich (*/) beginnen, um URLs abzugleichen. Beispiele finden Sie in der nachstehenden Tabelle.
Beispiele
| URL | Muster | Übereinstimmungen? |
|---|---|---|
https://example.com/index.html |
example.com |
Falsch |
https://example.com/index.html |
https://*mple.com/index.html |
Stimmt |
https://example.com/index.html |
https://example.com |
Falsch |
https://example.com/index.html |
https://*.example.com |
Falsch |
https://example.com/index.html |
https://*.example.com/** |
Falsch |
https://example.com/index.html |
https://*example.com/** |
Stimmt |
https://example.com/index.html |
https://** |
Stimmt |
https://example.com/index.html |
https://* |
Falsch |
https://example.com/index.html |
** |
Stimmt |
https://example.com/index.html |
*example.com/index.html |
Falsch |
https://example.com/index.html |
*example.com/** |
Falsch |
https://example.com/index.html |
*/example.com/** |
Stimmt |
https://example.com/index.html |
htt*/** |
Stimmt |
https://example.com/index.html |
h*/example.com/** |
Stimmt |
https://test.example.com/index.html |
https://*example.com/** |
Stimmt |
https://test.example.com/index.html |
https://*.example.com/** |
Stimmt |
runContext
(Optional) Ermöglicht Ihnen die Auswahl, welche Elemente in die Zugänglichkeitsanalyse Ihrer Seite einbezogen und davon ausgeschlossen werden sollen.
Wenn Sie runContext Elemente auswählen, die in Ihre Analyse einbezogen werden sollen (über einen einzelnen CSS-Selektor, ein Array von CSS-Selektoren oder mithilfe der include Eigenschaft), analysiert der axe Developer Hub nur die von den CSS-Selektoren ausgewählten Elemente. Wenn also keine Elemente ausgewählt sind (beispielsweise aufgrund eines Rechtschreibfehlers in einem CSS-Klassenselektor), wird nichts analysiert und, was noch wichtiger ist, es werden keine Seitenzustände erfasst.
Der Wert von runContext kann sein:
-
Ein einzelner CSS-Selektor für Elemente, die in die Analyse einbezogen werden sollen:
axe: { runContext: '.main' } -
Ein Array von CSS-Selektoren für Elemente, die in die Analyse einbezogen werden sollen:
axe: { runContext: [ '.main', '.text-block' ] } -
Ein Kontextobjekt, das
includeundexcludeEigenschaften enthält (wie im obigen Beispiel gezeigt). Sie könnenincludeoderexcludeoder beides angeben. Jedesincludeoderexcludekann ein einzelner CSS-Selektor oder ein Array von CSS-Selektoren sein:axe: { runContext: { include: '.main', exclude: '.ad-section' } }
Weitere Einzelheiten finden Sie in der axe-core Context-Dokumentation.
runOptions
(Optional) Das runOptions Objekt erlaubt die folgende Teilmenge von Eigenschaften vom Typ „axe-core“ Options :
-
ancestry: Standard istfalse. Wenntrue, enthalten die zurückgegebenen CSS-Selektoren die übergeordneten Elemente der zurückgegebenen Elemente.importantWenn Ihre Seite dynamische IDs oder Klassen verwendet (Element-IDs oder Klassen, die sich bei jedem Neuladen der Seite ändern), müssen Sie dies als
ancestryangeben, damit axe Developer Hub ordnungsgemäß erkennen und verfolgen kann, ob es sich bei Barrierefreiheitsproblemen um [Duplikate] handelt, da axe Developer Hub standardmäßig erwartet, dass Element-IDs und Klassen zwischen Testläufen gleich bleiben.true(dh-glossary#duplicate)Wenn
ancestryisttrue, verwendet axe Developer Hub stattdessen die Position des Elements innerhalb des DOM-Baums, um dasselbe Element zwischen Testläufen zu lokalisieren.Das folgende Beispiel zeigt einen Selektor, wenn
ancestryfürfalseein iframe-Element mit der ID main-iframe (<iframe id="main-iframe" ...>) steht:iframe#main-iframeWenn
ancestrytrueist, würde der Selektor den gesamten Pfad vom Stammelement einschließen und es sind keine IDs oder Klassen angegeben:html > body > div:nth-child(20) > div:nth-child(1) > div > div > ul > li:nth-child(1) > div > span > iframe -
runOnly: Hiermit können Sie durch die Angabe von Namen oder Tags einschränken, welche Regeln ausgeführt werden. Weitere Informationen finden Sie weiter unten unterrunOnly. -
rules: Aktivieren oder deaktivieren Sie Regeln mithilfe derenabledEigenschaft. Weitere Informationen finden Sie unten bei denRegeln.
Nachfolgend sehen Sie ein Beispiel für runOptions:
axe: {
runOptions: {
ancestry: true,
runOnly: {
type: 'tag',
values: 'wcag2a'
},
rules: {
'ruleId1': { enabled: false },
'ruleId2': { enabled: false }
}
}
}runOnly
Die Verwendung von runOnly gilt als fortgeschrittene Verwendung, und wenn Sie runOnly verwenden, erhalten Sie eine Warnung.
Sie können nicht sowohl runOptions.runOnly als auch [configurationOverrides] verwenden(#configurationoverrides-interface). Andernfalls erhalten Sie einen Fehler.
Der runOnly Wert (Teil des Objekts runOptions ) kann einer der folgenden sein:
-
Eine Zeichenfolge, die die Regel-ID der Regel darstellt, die Sie für die Barrierefreiheitsanalyse verwenden möchten:
axe: { runOptions: { runOnly: 'ruleId' } } -
Ein Array von Zeichenfolgen, die die Regel-IDs der Regeln darstellen, die Sie verwenden möchten:
axe: { runOptions: { runOnly: [ 'ruleId1', 'ruleId2' ] } } -
Ein Objekt mit
typeundvaluesEigenschaften. DertypeWert ist eine Zeichenfolge, die Regeln, Regel, Tag oder Tags sein kann. DievaluesEigenschaft kann eine Zeichenfolge oder ein Array von Zeichenfolgen sein, die die Regel oder Tags darstellen, die Sie für die Barrierefreiheitsanalyse verwenden möchten. Das folgende Beispiel zeigt die Verwendung desrunOnly-Objekts, um die Barrierefreiheitsprüfungen auf Regeln zu beschränken, die mit wcag2a gekennzeichnet sind:axe: { runOptions: { runOnly: { type: 'tag', values: 'wcag2a' } } }
– Weitere Beispiele zur Verwendung (mit axe-core) finden Sie unter [Beispiele für Optionsparameter]. runOnly (https://github.com/dequelabs/axe-core/blob/develop/doc/API.md#options-parameter-examples)
– Weitere Informationen zu verfügbaren Tag-Werten finden Sie unter axe-core Tags.
- Informationen zu den Regeln, Regel-IDs und Tags finden Sie unter Regelbeschreibungen.
rules
Mit dem rules Wert (auf dem runOptions Objekt) können Sie während der Analyse bestimmte Regeln aktivieren (enabled: true) oder deaktivieren (enabled: false), wie unten gezeigt:
axe: {
runOptions: {
rules: {
'ruleId1': { enabled: false },
'ruleId2': { enabled: false }
}
}
}sessionId
Die sessionId Eigenschaft ist veraltet und sollte nicht verwendet werden. Siehe buildID oben.
timeout
Das timeout Objekt (vom Typ Timeouts) in AxeConfiguration legt die Timeout-Werte in Millisekunden für die jeweiligen Controller-Methoden (oder benutzerdefinierte Befehle für Cypress) fest. (Informationen zu den Controller-Klassen finden Sie in den Controller-Klassen und Informationen zu benutzerdefinierten Cypress-Befehlen in den Cypress-Befehle .) Wenn ein Timeout abläuft, schlägt der Test mit einer Meldung fehl, die angibt, dass das Timeout überschritten wurde. Sie können das Timeout erhöhen, um den Fehler zu vermeiden.
Diese Timeout-Werte sind unabhängig vom von Ihnen verwendeten Test-Framework und Sie müssen möglicherweise auch die Timeout-Werte für dieses Framework erhöhen.
In diesem Beispiel wird das analyze Timeout auf 8 Sekunden, flush auf 15 Sekunden, start auf 10 Sekunden und stop auf 10 Sekunden festgelegt. (Die Standardwerte sind in der Tabelle unter Timeouts Interface aufgeführt.)
axe: {
timeout: {
analyze: 8000
flush: 15000,
start: 10000,
stop: 10000,
}
}Controller-Klassen
Konfigurationsfunktionen
Mit den von Watcher bereitgestellten Konfigurationsfunktionen können Sie Ihr Setup für das angegebene Testframework ändern und die Ausführung von Watcher Ihren Anforderungen entsprechend anpassen. Weitere Informationen finden Sie unter AxeConfiguration Interface .
| Test-Framework | Konfigurationsfunktion |
|---|---|
| Cypress | cypressConfig |
| Playwright | playwrightConfig |
| Playwright Test | playwrightTest |
| Puppeteer | puppeteerConfig |
| WebdriverIO | wdioConfig |
| WebdriverIO Testrunner | wdioTestRunner |
| WebDriverJS | webdriverConfig |
cypressConfig
Erstellt eine Konfiguration für Cypress.
cypressConfig(config: Cypress.ConfigOptions & Configuration): Cypress.ConfigOptionscypressConfig Parameter
-
config:Cypress.ConfigOptions & ConfigurationSchnittmengentyp von
Cypress.ConfigOptionsundKonfiguration.
Gibt zurück: Cypress.ConfigOptions
playwrightConfig
Erstellt eine Konfiguration für Playwright.
playwrightConfig(opts: Configuration & LaunchOptions): LaunchOptionsplaywrightConfig Parameter
-
opts:Configuration & LaunchOptionsSchnittmengentyp von
LaunchOptionsundKonfiguration.
Gibt zurück: LaunchOptions
playwrightTest
Erstellt eine Konfiguration für den Playwright-Test.
playwrightTest(options: Options): ReturnValueplaywrightTest Parameter
-
options:OptionsOptionsist ein Schnitttyp vonKonfigurationundLaunchOptions.
Gibt zurück: ReturnValue
puppeteerConfig
Erstellt eine Konfiguration für Puppeteer.
puppeteerConfig(opts: Configuration & LaunchOptions & BrowserLaunchArgumentOptions & BrowserConnectOptions): OptionspuppeteerConfig Parameter
-
opts:Configuration & LaunchOptions & BrowserLaunchArgumentOptions & BrowserConnectOptionsSchnitttyp von
LaunchOptions,BrowserLaunchArgumentOptions,BrowserConnectOptionsundKonfiguration.
Gibt zurück: Options
wdioConfig
Erstellt eine WebdriverIO-Konfiguration.
wdioConfig({ axe, ...options}: Options): RemoteOptionswdioConfig Parameter
-
arg:OptionsOptionsist ein Schnitttyp vonRemoteOptionsundKonfiguration.
Gibt zurück: RemoteOptions
wdioTestRunner
Erstellt eine WebdriverIO Testrunner-Konfiguration.
wdioTestRunner(...params: unknown[]): Options.TestrunnerwdioTestRunner Parameter
-
params:unbekannt[]Der
params-Wert ist einer der folgenden:- Ein Array mit einem Wert, der ein Schnitttyp aus „Options.Testrunner“ und „Configuration“ ist.
- Ein Array, bei dem der erste Array-Wert eine
AxeConfigurationund der zweite Wert einOptions.Testrunnerist.
Rückgaben: Options.Testrunner
webdriverConfig
Erstellt eine Selenium WebDriver-Konfiguration.
webdriverConfig(arg: WebDriverArgs): OptionswebdriverConfig Parameter
-
arg:WebDriverArgsEine um ein Selenium WebDriver-Mitglied erweiterte
Konfiguration.Options
Rückgaben: Options
Configuration Schnittstelle
Die Configuration Schnittstelle wird mit den Konfigurationsfunktionen verwendet und enthält eine Eigenschaft:
| Name | Art | Erforderlich | Beschreibung |
|---|---|---|---|
axe |
AxeConfiguration |
ja | Die Konfiguration, die an die Konfigurationsfunktion Ihres Testframeworks übergeben werden soll. AxeConfiguration |
Alle Konfigurationsfunktionen verwenden diese axe Eigenschaft, damit Sie Watcher einrichten und Ihre Barrierefreiheitstests konfigurieren können. Weitere Informationen finden Sie im nächsten Abschnitt, AxeConfiguration Interface.
ConfigurationOverrides Schnittstelle
Über die ConfigurationOverrides Schnittstelle können Sie die globalen Konfigurationseinstellungen Ihrer Organisation für einzelne Testläufe überschreiben. Diese Eigenschaft muss in Übereinstimmung mit den in der globalen Konfiguration Ihres Unternehmens festgelegten Berechtigungen verwendet werden.
| Name | Art | Erforderlich | Beschreibung |
|---|---|---|---|
Zugänglichkeitsstandard |
string |
Nein | Der zu befolgende Zugänglichkeitsstandard |
axeCoreVersion |
string |
Nein | Gibt an, welche Axe-Core-Version verwendet werden soll. |
bestPractices |
boolean |
Nein | Gibt an, ob Best-Practice-Regeln befolgt werden sollen. |
experimentalRules |
boolean |
Nein | Ob experimentelle Regeln befolgt werden sollen |
accessibilityStandard
Legt den Zugänglichkeitsstandard fest, anhand dessen getestet werden soll. Verfügbare Optionen:
- „Alle“ – Tests gegen alle verfügbaren Standards
- „WCAG 2.2 AAA“
- „WCAG 2.2 AA“
- „WCAG 2.2 A“
- „WCAG 2.1 AAA“
- „WCAG 2.1 AA“
- „WCAG 2.1 A“
- „WCAG 2.0 AAA“
- „WCAG 2.0 AA“
- „WCAG 2.0 A“
- „Trusted Tester v5“
- „EN 301 549“
Ihre Organisation muss das Überschreiben dieser Einstellung in der globalen Konfiguration zulassen und der ausgewählte Standard muss zu den zulässigen Optionen gehören.
axeCoreVersion
Gibt an, welche Version von axe-core zum Testen verwendet werden soll. Zu den verfügbaren Optionen gehören:
- 'latest' - Neueste unterstützte Version, die derzeit mit axe Watcher gebündelt ist
– Bestimmte Versionen ab 4.4.0 (z. B. „4.10.2“, „4.9.1“ usw.)
Ihre Organisation muss das Überschreiben dieser Einstellung in der globalen Konfiguration zulassen und die ausgewählte Version muss zu den zulässigen Optionen gehören.
bestPractices
Aktiviert oder deaktiviert Best Practice-Regeln für den Testlauf. Best Practices verbessern die Zugänglichkeit, sind jedoch nicht Teil formaler Standards. Ihre Organisation muss das Überschreiben dieser Einstellung zulassen, damit sie wirksam wird.
experimentalRules
Aktiviert oder deaktiviert experimentelle Regeln für den Testlauf. Experimentelle Regeln befinden sich noch in der Entwicklung und können zu Fehlalarmen führen. Ihre Organisation muss das Überschreiben dieser Einstellung in der globalen Konfiguration zulassen, damit sie wirksam wird.
Controller Klassen
Die folgenden Klassen erweitern die abstrakte Klasse Controller , damit Sie die Zugänglichkeitsanalyse der Seiten Ihrer Website manuell steuern können.
| Test-Frameworks | Name |
|---|---|
| Playwright und Playwright Test | PlaywrightController |
| Puppeteer | PuppeteerController |
| WebdriverIO und WebdriverIO Testrunner | WdioController |
| WebDriverJS | WebdriverController |
Für Cypress werden die Methoden in den *Controller-Klassen als benutzerdefinierte Befehle implementiert. Weitere Informationen finden Sie unter Controller Custom Commands for Cypress .
Controller
abstract class ControllerDie Controller abstrakte Klasse enthält die Methoden zur Steuerung der Seitenanalyse. Jede der konkreten Klassen erweitert diese Klasse, sodass die folgenden Methoden in allen konkreten Klassen verfügbar sind.
analyze
analyze(): Promise<void>Analysiert die aktuelle Seite auf Barrierefreiheitsfehler. Sie rufen diese Methode auf, nachdem Sie eine Webseite für die Analyse eingerichtet haben (z. B. Werte in ein Formular eingegeben haben) und die automatische Analyse mit der Methode stop oder durch Setzen von autoAnalyze auf false deaktiviert haben.
analyze Rückgabewert
Promise<void>
analyze Äquivalenter Cypress-Befehl
cy.axeWatcherAnalyze()
flush
flush(): Promise<void>Sendet alle Ergebnisse des Barrierefreiheitsscans an den axe Developer Hub. Sollte am Ende des Testlaufs aufgerufen werden, um sicherzustellen, dass die Ergebnisse an die axe Developer Hub-Server von Deque gesendet wurden.
flush Rückgaben
Promise<void>
flush Äquivalenter Cypress-Befehl
cy.axeWatcherFlush()
start
start(): Promise<void>Setzt die automatische Analyse von Webseiten fort. Sie rufen diese Methode auf, wenn Sie die automatische Analyse von Webseiten auf Barrierefreiheitsprobleme fortsetzen möchten.
start Rückgaben
Promise<void>
start Äquivalenter Cypress-Befehl
cy.axeWatcherStart()
stop
stop(): Promise<void>Stoppt die automatische Analyse von Webseiten. Nachdem Sie die stop Methode aufgerufen haben, können Sie alle weiteren Einstellungen vornehmen, die für Ihre Webseite erforderlich sind, und dann die analyze Methode aufrufen, um die Seite auf Barrierefreiheitsfehler zu überprüfen.
stop Rückgabewert
Promise<void>
stop Äquivalenter Cypress-Befehl
cy.axeWatcherStop()
PlaywrightController
Mit der PlaywrightController Klasse können Sie die Barrierefreiheitsanalyse für Testläufe mit Playwright und Playwright Test manuell steuern. Sie können die automatische Barrierefreiheitsanalyse starten und stoppen und Seiten analysieren, die zusätzliche Einstellungen erfordern.
Weitere Informationen zu Playwright finden Sie in der Playwright-Dokumentation.
Konstruktor
new PlaywrightController(driver: Page): PlaywrightControllerParameter
driver:Seite
Der driver Wert ist ein Playwright-Objekt Page .
Rückgaben PlaywrightController
Siehe Controller für die in der abstrakten Basisklasse implementierten Methoden.
PuppeteerController
Die PuppeteerController Klasse ermöglicht die manuelle Steuerung Ihrer Testläufe mit Puppeteer. Mit der manuellen Steuerung können Sie zusätzliche Einstellungen vornehmen, die für komplexere Webseiten erforderlich sind.
Weitere Informationen zu Puppeteer finden Sie unter Puppeteer.
Konstruktor
new PuppeteerController(driver: Page): PuppeteerControllerParameter
driver:Seite
Der driver Wert ist ein Puppeteer Page Objekt.
Gibt zurück PuppeteerController
Siehe Controller für die in der abstrakten Basisklasse implementierten Methoden.
WdioController
Damit können Sie die Testläufe von WebdriverIO und WebdriverIO Testrunner manuell steuern. WdioController Bei Seiten, die zusätzliche Einrichtungs- oder Konfigurationsschritte erfordern, können Sie den automatischen Test beenden und jede Seite, die eine solche Konfiguration erfordert, manuell analysieren.
Konstruktor
new WdioController(driver: Browser): WdioControllerParameter
driver:Browser
Gibt zurück WdioController
Siehe Controller für die in der abstrakten Basisklasse implementierten Methoden.
WebdriverController
Konstruktor
new WebdriverController(driver: WebDriver): WebdriverControllerParameter
driver:WebDriver
Der driver Wert ist ein Selenium WebDriver Objekt.
Gibt zurück WebdriverController
Siehe Controller für die in der abstrakten Basisklasse implementierten Methoden.
Benutzerdefinierte Cypress-Befehle
In der Cypress-Browser-Automatisierungsplattform werden die Methoden in den *Controller-Klassen als benutzerdefinierte Befehle implementiert. Weitere Informationen zum Implementieren und Verwenden benutzerdefinierter Befehle finden Sie unter Benutzerdefinierte Befehle auf der Cypress-Dokumentationswebsite.
Die folgenden benutzerdefinierten Befehle sind implementiert. Jeder benutzerdefinierte Befehl gibt zurück Chainable<void> um die Verkettung mit anderen Cypress-Befehlen zu ermöglichen.
| Controller-Methode | Entsprechender benutzerdefinierter Cypress-Befehl |
|---|---|
analyze() |
axeWatcherAnalyze() |
flush() |
axeWatcherFlush() |
start() |
axeWatcherStart() |
stop() |
axeWatcherStop() |
Ab Watcher 3.9.0 sind die vier benutzerdefinierten Cypress-Befehle axeAnalyze(), axeFlush(), axeStart() und axeStop() veraltet und sollten nicht mehr verwendet werden.
Wenn Sie das @axe-devtools/cypress Paket mit Watcher verwenden, müssen Sie mindestens auf Version 3.9.0 von Watcher aktualisieren, da die veralteten benutzerdefinierten Befehle mit den benutzerdefinierten Befehlen in @axe-devtools/cypress Konflikt stehen.
Beispiel für einen Cypress-Befehl
Das folgende Beispiel zeigt, wie Sie die Cypress-Befehle des axe Developer Hub aus dem @axe-core/watcher Paket importieren und dann den axeWatcherFlush Befehl am Ende jedes Tests aufrufen (indem Sie ihn in afterEach() einfügen):
// Import the axe-watcher commands.
require('@axe-core/watcher/dist/cypressCommands')
// Flush axe-watcher results after each test.
afterEach(() => {
cy.axeWatcherFlush()
})Timeouts-Schnittstelle
Das Timeout Objekt (vom Typ Timeouts) in der AxeConfiguration-Schnittstelle ermöglicht es Benutzern, die Timeout-Werte (in Millisekunden) für die jeweiligen Controller-Funktionen oder die benutzerdefinierten Cypress-Befehle zu ändern.
interface Timeouts {
start?: number
stop?: number
flush?: number
analyze?: number
}| Name | Art | Erforderlich | Standard | Beschreibung |
|---|---|---|---|---|
| analysieren | Nummer | Nein | 5000 | Legt das Timeout in Millisekunden für die Controllerfunktion analyze oder den benutzerdefinierten Befehl axeWatcherAnalyze (in Cypress) fest. |
| leeren | Nummer | Nein | 5000 | Legt das Timeout in Millisekunden für die Controllerfunktion flush oder den benutzerdefinierten Befehl axeWatcherFlush (in Cypress) fest. |
| Start | Nummer | Nein | 2000 | Legt das Timeout in Millisekunden für die Controllerfunktion Start oder den benutzerdefinierten Befehl axeWatcherStart (in Cypress) fest. |
| stoppen | Nummer | Nein | 5000 | Legt das Timeout in Millisekunden für die Controllerfunktion Stop oder den benutzerdefinierten Befehl axeWatcherStop (in Cypress) fest. |
