Riferimento API WebdriverIO per Axe DevTools per Web
Riferimento per le API nel pacchetto @axe-devtools/webdriverio
Costruttore
Nella configurazione standard, l'unico argomento richiesto per il costruttore di WebdriverIO è l'istanza di WebdriverIO. Se desideri utilizzare una versione di axe-core diversa da quella inclusa originalmente o un set di regole personalizzato, puoi passare queste opzioni nel costruttore.
Non puoi selezionare una versione di axe-core non standard e un set di regole personalizzato.
AxeDevToolsWebdriverIO(options: Options)L' Options interfaccia è un oggetto che contiene le seguenti proprietà:
client(obbligatorio): Un client WebdriverIOaxeSource(opzionale): una stringa del codice sorgente di axe-corerulesetID(opzionale): un ID del set di regole ('wcag2', 'wcag2.1', 'wcag2.2', 'wcag2aaa', 'wcag2.1aaa', 'wcag2.2aaa', '508', 'en301549', 'rgaav4', 'ttv5')
Non puoi fornire entrambi axeSource e rulesetID. I due sono mutuamente esclusivi.
Definizione della versione di axe-core
Per impostazione predefinita, @axe-devtools/webdriverio utilizzerà l'ultima versione disponibile di axe-core. Per configurare una versione diversa di axe-core, passa l'opzione axeSource . Tutte le versioni di axe-core possono essere recuperate da npm o tramite unpkg visitando http://unpkg.com/axe-core@<version>/axe.js (sostituisci <version> con il numero di versione). Tutte le versioni di axe-core successive alla 2.1.0 sono supportate.
Questo è un esempio di inizializzazione di Axe DevTools WebdriverIO con axe-core 2.3.0 da un file situato nella directory principale del file di test.
const axeSource = require('../axe-core-3.5.0').source;
const axeDevTools = new AxeDevToolsWebdriverIO({ client, axeSource });Metodo analyze
Questo metodo esegue l'analisi e in ultima istanza restituisce i risultati della scansione di accessibilità.
analyze(client: webdriverio.Client): Promise<axe.AxeResults>Esegui un'analisi utilizzando la configurazione predefinita sul client dato. Viene restituito un Promise che si risolve con il set di risultati restituito da axe-core.
Regole personalizzate
Per informazioni sull'uso di regole personalizzate con Axe DevTools, leggi la guida alla generazione e integrazione di set di regole personalizzati nella guida CLI.
Metodo analyzeUniversal
Esegue un'analisi e restituisce i risultati nel Formato Universale di Axe. Il metodo esistente analyze() rimane invariato.
analyzeUniversal(): Promise<UniversalExport>Opzioni di catena
Esistono diverse opzioni per limitare il campo delle tue scansioni Axe DevTools. Puoi includere o escludere specifici ambiti CSS e/o ignorare gli iframe. I metodi di catena (sotto) sul costruttore lo rendono possibile.
disableFrame
AxeDevToolsWebdriverIO.disableFrame(selector: string): AxeDevToolsWebdriverIODisabilita l'iniezione di axe-core nei frame che corrispondono al selettore CSS dato. Questo metodo può essere chiamato un numero qualsiasi di volte.
includi
AxeDevToolsWebdriverIO.include(selector: string): AxeDevToolsWebdriverIOSelettore da includere nell'analisi. Può essere chiamato un numero qualsiasi di volte.
escludi
AxeDevToolsWebdriverIO.exclude(selector: string): AxeDevToolsWebdriverIOSelettore da escludere nell'analisi. Può essere chiamato un numero qualsiasi di volte.
Configurazione delle regole
Queste opzioni modificano la configurazione delle regole per il set di regole scelto. Queste opzioni sovrascrivono la configurazione standard delle regole e modificheranno i tuoi risultati. Ulteriori chiamate con questi metodi sovrascriveranno le chiamate precedenti.
conRegole
AxeDevToolsWebdriverIO.withRules(rules: RuleID[]): AxeDevToolsWebdriverIOLimita l'analisi solo alle regole specificate. Non può essere usato con AxeDevToolsWebdriverIO.withTags().
conTag
AxeDevToolsWebdriverIO.withTags(tags: axe.TagValue[]): AxeDevToolsWebdriverIOLimita l'analisi solo ai tag specificati. Non può essere usato con AxeDevToolsWebdriverIO.withRules().
disabilitaRegole
AxeDevToolsWebdriverIO.disableRules(rules: RuleID[]): AxeDevToolsWebdriverIOImposta l'elenco delle regole da saltare durante l'esecuzione di un'analisi.
Opzioni di axe-core
Queste opzioni accedono alla configurazione sottostante di axe-core. Per ulteriori informazioni su queste opzioni, vedi la documentazione di axe-core.
configurare
AxeDevToolsWebdriverIO.configure(config: axe.Spec): AxeDevToolsWebdriverIOImposta la configurazione per axe-core. Questo valore è passato direttamente a axe.configure().
opzioni
AxeDevToolsWebdriverIO.options(runOptions: axe.RunOptions): AxeDevToolsWebdriverIOLe runOptions da passare direttamente a axe.run(). Vedi la documentazione di axe-core per l'uso. Sovrascriverà qualsiasi altra opzione configurata, incluse le chiamate a AxeDevToolsWebdriverIO.withRules() e AxeDevToolsWebdriverIO.withTags().
Servizio di utilizzo
Il servizio di utilizzo ti consente di ottenere informazioni sulle tendenze di utilizzo di Axe DevTools all'interno della tua organizzazione.
Per impostazione predefinita, il servizio di utilizzo è disabilitato e l'URL predefinito è https://usage.deque.com.
Variabili d'ambiente
Queste variabili d'ambiente ti consentono di configurare il servizio di utilizzo e modificare le proprietà degli eventi riportati.
| Nome | Tipo | Può Sovrascrivere | Descrizione |
|---|---|---|---|
AXE_DISTINCT_ID |
Stringa | — | Un identificatore UUID che rimane lo stesso per l'utente connesso (a meno che non venga rigenerato) |
AXE_METRICS_URL |
Stringa | — | L'URL del punto di accesso REST per l'utilizzo |
AXE_TRACK_USAGE |
Booleano | — | Abilita il report del servizio di utilizzo (il valore predefinito è false) |
AXE_APPLICATION |
Stringa | falso | L'applicazione utilizzata per controllare gli errori di accessibilità |
AXE_DEV_INSTANCE |
Booleano | vero | Indica se questo evento è dovuto ad azioni di uno sviluppatore software. Utile per marcare e successivamente rimuovere eventi registrati durante lo sviluppo o i test. |
AXE_DEPARTMENT |
Stringa | vero | Il dipartimento utente all'interno dell'organizzazione |
AXE_KEYCLOAK_ID |
Stringa | falso | L'ID Keycloak dell'utente |
AXE_LOGGED_IN |
Booleano | falso | Registra se l'utente è connesso all'applicazione in test |
AXE_ORGANIZATION |
Stringa | vero | L'organizzazione dell'utente |
AXE_SESSION_ID |
Stringa | falso | Un UUID che identifica la sessione dell'utente |
AXE_USER_ID |
Stringa | falso | Un'identità specifica dell'utente come nome o ID di accesso |
AXE_USER_JOB_ROLE |
Stringa | falso | Il ruolo lavorativo dell'utente |
AXE_USER_STATUS |
Stringa | falso | Informazioni sullo stato che si desidera associare all'utente |
attivaTracciamento
Questo metodo consente agli utenti di optare per l'invio di dati al servizio di utilizzo
.enableTracking(state: boolean): AxeDevToolsWebdriverIOimpostaTrackingUrl
Questo metodo consente agli utenti di modificare la destinazione dei dati delle metriche di utilizzo
.setTrackingUrl(url: string): AxeDevToolsWebdriverIOimpostaIdDistinto
Questo metodo consente agli utenti di modificare l'id distinto memorizzato/utilizzato
.setDistinctId(distinctId: string): AxeDevToolsWebdriverIO