Riferimento API di Cypress per Axe DevTools per il Web
Riferimento per le API nel pacchetto @axe-devtools/cypress
Comandi concatenabili di Cypress (analisi)
cy.axeAnalyze()
Questo comando concatenabile inietta axe in tutte le pagine e gli iframe e poi esegue axe sulla pagina.
| Parametro | Tipo | Valore predefinito | Descrizione |
|---|---|---|---|
| name (opzionale) | Stringa | non definito | Imposta l'identificatore per questo risultato di scansione memorizzato nel rapporto. Se non fornito, viene utilizzata l'ora corrente. |
| context (opzionale) | axe.ElementContext | non definito | Definisce l'ambito dell'analisi: la parte del DOM che si desidera analizzare. Tipicamente sarà il documento o un selettore specifico come nome classe, ID, selettore, ecc. |
| options (opzionale) | axe.RunOptions | non definito | Insieme di opzioni passate nelle regole o nei controlli, modificandole temporaneamente. Questo contrasta con axe.configure, che è più permanente. |
| log (opzionale) | Booleano | falso | Ritorna l'output su stdout con il numero di elementi non accessibili e gli impatti delle violazioni come una tabella. |
cy.isAxeClean()
Questo comando concatenabile è un'affermazione che la pagina non ha violazioni di accessibilità.
Parametri:
| Parametro | Tipo | Valore predefinito | Descrizione |
|---|---|---|---|
| context (opzionale) | axe.ElementContext | non definito | Definisce l'ambito dell'analisi: la parte del DOM che si desidera analizzare. Tipicamente sarà il documento o un selettore specifico come nome classe, ID, selettore, ecc. |
| options (opzionale) | axe.RunOptions | non definito | Insieme di opzioni passate nelle regole o nei controlli, modificandole temporaneamente. Questo contrasta con axe.configure, che è più permanente. |
Comandi concatenabili di Cypress (configurazione)
Integra Axe DevTools per il Web con Cypress utilizzando comandi concatenabili personalizzati di Cypress per configurare i risultati analizzati.
cy.setAxeSource()
Questo comando concatenabile imposta la versione di axe-core.
| Parametro | Tipo | Valore predefinito | Descrizione |
|---|---|---|---|
| Percorso del file (obbligatorio) | Stringa | null | Percorso relativo alla radice del progetto che dovrebbe includere axe.source o la versione minimizzata di axe-core. |
cy.setAxeCustom()
Questo comando catenabile consente l'uso di set di regole personalizzati.
- Axe DevTools for Web Cypress leggerà implicitamente anche
axe-ruleset.jsonquando collocato nel livello radice del progetto o utilizzerà anche file di set di regole personalizzati quando laAXE_RULESET_PATHvariabile d'ambiente è impostata.
| Parametro | Tipo | Valore predefinito | Descrizione |
|---|---|---|---|
| Percorso del file (obbligatorio) | Stringa | null | Percorso relativo alla radice del progetto che dovrebbe includere controlli e regole |
cy.setAxeRuleset()
Questo comando catenabile consente agli utenti di eseguire le regole per tag, simile alla configurazione axe.run().
| Parametro | Tipo | Valore predefinito | Descrizione |
|---|---|---|---|
| set di regole (obbligatorio) | '508', 'en301549', 'rgaav4', 'ttv5', 'wcag2', 'wcag2.1', 'wcag2.2', 'wcag2aaa', 'wcag2.1aaa', 'wcag2.2aaa' | 'wcag2.1' | Array di tag a cui questa regola è assegnata. |
cy.setAxeReportName()
Questo comando catenabile consente agli utenti di impostare il nome del file di report.
| Parametro | Tipo | Valore predefinito | Descrizione |
|---|---|---|---|
| nomeReport (obbligatorio) | Stringa | @axe-devtools-cypress | Nome del file di report. |
cy.getAxeResults()
Questo comando catenabile consente agli utenti di utilizzare i risultati dopo aver eseguito cy.axeAnalyze().
Le risposte da getAxeResults() restituiscono la forma dati axe.AxeResults.
Esempio:
after(() => {
cy.axeAnalyze();
cy.getAxeResults().then(data => {
cy.writeFile('./results.json', data)
})
})cy.getUniversalResults()
Questo comando catenabile restituisce i risultati della più recente cy.axeAnalyze() chiamata nel formato Formato Universale Axe. Restituisce null se non è stata ancora eseguita alcuna analisi.
Esempio:
after(() => {
cy.axeAnalyze();
cy.getUniversalResults().then(data => {
cy.writeFile('./results-universal.json', data)
})
})Servizio di utilizzo
Il servizio di utilizzo ti consente di ottenere informazioni sulle tendenze di utilizzo di Axe DevTools per il Web all'interno della tua organizzazione.
Variabili d'ambiente
Queste variabili d'ambiente ti permettono di configurare il servizio di utilizzo e di cambiare 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 |
cy.task('enableTracking', <boolean>)
Questo task di Cypress consente agli utenti di scegliere di inviare dati al servizio di utilizzo.
cy.task('setTrackingUrl', <string>)
Questo task di Cypress permette agli utenti di modificare la destinazione dei dati delle metriche di utilizzo.
cy.task('setDistinctId', <string>)
Questo task di Cypress permette agli utenti di cambiare l'id distinto che viene memorizzato o utilizzato.
Prossimi Passi
Se hai problemi nell'installare Axe DevTools per il Web, contatta direttamente il tuo rappresentante Deque, chiedici tramite il nostro servizio di supporto, o inviaci un'email. Saremo felici di aiutarti a iniziare.
