WebdriverIO API-Referenz für axe DevTools for Web
Referenz für die APIs im Paket @axe-devtools/webdriverio
Konstruktor
In der Standardkonfiguration ist das einzige Argument, das an den WebdriverIO-Konstruktor übergeben werden muss, die WebdriverIO-Instanz. Wenn Sie eine andere axe-core-Version als die ursprünglich enthaltene oder einen benutzerdefinierten Regelsatz verwenden möchten, können Sie diese Optionen an den Konstruktor übergeben.
Sie können keine nicht standardisierte Axe-Core-Version und einen benutzerdefinierten Regelsatz auswählen.
AxeDevToolsWebdriverIO(options: Options)Die Options Schnittstelle ist ein Objekt, das die folgenden Eigenschaften enthält:
client(erforderlich): Ein WebdriverIO-ClientaxeSource(optional): eine Zeichenfolge mit Axe-Core-QuellcoderulesetID(optional): eine Regelsatz-ID ('wcag2', 'wcag2.1', 'wcag2.2', 'wcag2aaa', 'wcag2.1aaa', 'wcag2.2aaa', '508', 'en301549', 'ttv5')
Sie dürfen nicht beides angeben: axeSource und rulesetID. Die beiden schließen sich gegenseitig aus.
Definieren der axe-core-Version
Standardmäßig verwendet @axe-devtools/webdriverio die neueste verfügbare Version von axe-core. Um eine andere Version von axe-core zu konfigurieren, geben Sie die Option axeSource ein. Alle axe-core-Versionen können von npm oder über unpkg abgerufen werden, indem Sie http://unpkg.com/axe-core@<version>/axe.js aufrufen (ersetzen Sie <version> Mit der Versionsnummer). Alle axe-core-Versionen nach 2.1.0 werden unterstützt.
Dies ist ein Beispiel für die Initialisierung von axe DevTools WebdriverIO mit axe-core 2.3.0 aus einer Datei, die sich im übergeordneten Verzeichnis der Testdatei befindet.
const axeSource = require('../axe-core-3.5.0').source;
const axeDevTools = new AxeDevToolsWebdriverIO({ client, axeSource });analyze-Methode
Diese Methode führt die Analyse aus und gibt letztendlich die Ergebnisse des Zugänglichkeitsscans zurück.
analyze(client: webdriverio.Client): Promise<axe.AxeResults>Führen Sie eine Analyse mit der Standardkonfiguration auf dem angegebenen Client aus. Ein A Promise wird zurückgegeben, das mit dem von axe-core zurückgegebenen Ergebnissatz aufgelöst wird.
Benutzerdefinierte Regeln
Informationen zur Verwendung benutzerdefinierter Regeln mit axe DevTools finden Sie im Handbuch zur Generierung und Integration benutzerdefinierter Regelsätze im CLI-Handbuch.
Verkettungsoptionen
Für die Eingrenzung Ihres Umfangs mit axe DevTools stehen mehrere Optionen zur Verfügung. Sie können bestimmte CSS-Bereiche ein- oder ausschließen und/oder Iframes ignorieren. Die Kettenmethoden (unten) des Konstruktors machen dies möglich.
Rahmen deaktivieren
AxeDevToolsWebdriverIO.disableFrame(selector: string): AxeDevToolsWebdriverIODeaktivieren Sie das Einfügen von axe-core in Frames, die dem angegebenen CSS-Selektor entsprechen. Diese Methode kann beliebig oft aufgerufen werden.
beinhaltet
AxeDevToolsWebdriverIO.include(selector: string): AxeDevToolsWebdriverIOIn die Analyse einzubeziehender Selektor. Dies kann beliebig oft aufgerufen werden.
ausschließen
AxeDevToolsWebdriverIO.exclude(selector: string): AxeDevToolsWebdriverIOAus der Analyse auszuschließender Selektor. Dies kann beliebig oft aufgerufen werden.
Regelkonfiguration
Diese Optionen ändern die Regelkonfiguration für den ausgewählten Regelsatz. Diese Optionen überschreiben die Standardregelkonfiguration und ändern Ihre Ergebnisse. Zusätzliche Aufrufe mit diesen Methoden überschreiben vorherige Aufrufe.
mit Regeln
AxeDevToolsWebdriverIO.withRules(rules: RuleID[]): AxeDevToolsWebdriverIOBeschränken Sie die Analyse auf die angegebenen Regeln. Kann nicht mit AxeDevToolsWebdriverIO.withTags() verwendet werden.
mitTags
AxeDevToolsWebdriverIO.withTags(tags: axe.TagValue[]): AxeDevToolsWebdriverIOBeschränken Sie die Analyse auf die angegebenen Tags. Kann nicht mit AxeDevToolsWebdriverIO.withRules() verwendet werden.
Regeln deaktivieren
AxeDevToolsWebdriverIO.disableRules(rules: RuleID[]): AxeDevToolsWebdriverIOLegen Sie die Liste der Regeln fest, die beim Ausführen einer Analyse übersprungen werden sollen.
axe-core-Optionen
Diese Optionen greifen auf die zugrunde liegende axe-core-Konfiguration zu. Weitere Informationen zu diesen Optionen finden Sie in der axe-core-Dokumentation.
konfigurieren
AxeDevToolsWebdriverIO.configure(config: axe.Spec): AxeDevToolsWebdriverIOKonfiguration für Axe-Core festlegen. Dieser Wert wird direkt an axe.configure() übergeben.
Optionen
AxeDevToolsWebdriverIO.options(runOptions: axe.RunOptions): AxeDevToolsWebdriverIODer runOptions soll direkt an axe.run() weitergeleitet werden. Siehe die axe-core-Dokumentation zur Verwendung. Überschreibt alle anderen konfigurierten Optionen, einschließlich Aufrufe von AxeDevToolsWebdriverIO.withRules() und AxeDevToolsWebdriverIO.withTags().
Usage Service
Mit dem Nutzungsdienst erhalten Sie Einblick in die Nutzungstrends von axe DevTools in Ihrer Organisation.
Standardmäßig ist der Nutzungsdienst deaktiviert und die Standard-URL lautet https://usage.deque.com.
Umgebungsvariablen
Mit dieser Methode können Benutzer bestimmte Werte des Nutzungsdienstes über Umgebungsvariablen ändern.
| Umgebungsvariable | Art |
|---|---|
| AXE_IS_LOGGED_IN | Boolescher Wert |
| AXE_KEYCLOAK_ID | String |
| AXE_USER_ID | String |
| AXE_SESSION_ID | String |
| AXE_BENUTZER_STATUS | String |
| AXE_BENUTZER_JOB_ROLLE | String |
| AXE_DISTINCT_ID | String |
| AXE_IS_DEV_INSTANCE | Boolescher Wert |
| AXE_ORGANISATION | String |
| AXE_ANWENDUNG | String |
| AXE_METRICS_URL | String |
| AXE_TRACK_NUTZUNGSVERFOLGUNG | Boolescher Wert |
Tracking aktivieren
Mit dieser Methode können Benutzer der Übermittlung von Daten an den Nutzungsdienst zustimmen.
.enableTracking(state: boolean): AxeDevToolsWebdriverIOsetTrackingUrl
Wohin die Nutzungsmetrikdaten gesendet werden, können Benutzer mit dieser Methode ändern.
.setTrackingUrl(url: string): AxeDevToolsWebdriverIOsetDistinctId
Mit dieser Methode können Benutzer die eindeutige ID ändern, die gespeichert/verwendet wird
.setDistinctId(distinctId: string): AxeDevToolsWebdriverIO