Riferimento API di Playwright per Axe DevTools per il Web

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard

Riferimento per le API nel pacchetto @axe-devtools/playwright

Not for use with personal data

Costruttore

Nella configurazione standard, l'unico argomento richiesto da passare al costruttore è l'istanza di Playwright. Se si desidera utilizzare una versione di axe-core diversa da quella originariamente inclusa o un set di regole personalizzato, è possibile passare anche queste opzioni nel costruttore.

note

Non è possibile selezionare una versione non standard di axe-core e un set di regole personalizzate contemporaneamente.

Costruttore di Axe DevTools Playwright:

AxeDevToolsBuilder({ page: PlaywrightPage, source: string, rulesetId: AxeDevtoolsRulesetID})

È necessario passare un'istanza di PlaywrightPage come primo argomento. Il secondo argomento può essere un ID del set di regole o un oggetto axe. Se non fornisci un secondo argomento, devi configurare il file di configurazione delle regole personalizzate di @axe-devtools/script-builder, altrimenti il costruttore genererà un'eccezione. Deve essere chiamato con la keyword new.

// instantiate with the Section 508 rule set
const builder = new AxeDevToolsBuilder({ page, rulesetId: '508' });

// or with a specific axe instance
const { source } = require('../axe-core-2.3.0');
const builder = new AxeDevToolsBuilder({ page, source });

Regole Personalizzate

Per informazioni sull'uso delle regole personalizzate con Axe DevTools, leggi la guida sulla generazione e integrazione del set di regole personalizzate nel guida CLI

analizza

AxeDevToolsBuilder.analyze(): Promise<axe.Results | Error>

Esegue un'analisi e passa l'oggetto risultato e eventuali errori.

new AxeDevToolsBuilder({ page })
  .analyze()
  .then(results => {
    console.log(results);
  })
  .catch(e => {
    // Do something with error
  });

analizzaUniversale

AxeDevToolsBuilder.analyzeUniversal(): Promise<UniversalExport>

Esegue un'analisi e restituisce i risultati nel Formato Universale Axe. Il metodo analyze() esistente non viene modificato.

new AxeDevToolsBuilder({ page })
  .analyzeUniversal()
  .then(results => {
    console.log(results);
  })
  .catch(e => {
    // Do something with error
  });

Opzioni di Catena

Esistono due opzioni per delimitare le scansioni Axe DevTools. Puoi scegliere di includere o escludere scopi CSS specifici. I metodi di catena seguenti lo rendono possibile. Questi metodi possono essere concatenati per creare scansioni complesse e mirate.

include

AxeDevToolsBuilder.include(selector: String | String[])

Aggiunge un selettore CSS all'elenco degli elementi da includere nell'analisi. Gli elementi al di fuori dell'ambito passato a .include() non verranno scansionati.

new AxeDevToolsBuilder({ page }).include('<CSS-Selector>');

esclude

AxeDevToolsBuilder.exclude(selector: String | String[])

Aggiunge un selettore CSS all'elenco degli elementi da escludere dall'analisi. Solo gli elementi al di fuori dell'ambito passato a .exclude() verranno scansionati.

Questi metodi possono essere concatenati per raffinare ulteriormente l'ambito della scansione.

new AxeDevToolsBuilder({ page }).exclude('<CSS-Selector>');

In questo esempio, tutti gli elementi all'interno di <CSS-Selector> verrebbero scansionati, tranne gli elementi all'interno di <Inner-CSS-Selector>:

new AxeDevToolsBuilder({ page }).include('<CSS-Selector>').exclude('<Inner-CSS-Selector>');

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. Chiamate aggiuntive con questi metodi sovrascriveranno le chiamate precedenti.

conRegole

AxeDevToolsBuilder.withRules(rules: String|Array)

Limita l'analisi solo a quelle con gli ID di regola specificati. Accetta una stringa di un singolo ID di regola o un array di più ID di regola.

//with a single rule ID
AxeDevToolsBuilder({ page }).withRules('html-lang');

//with an array of rule IDs
AxeDevToolsBuilder({ page }).withRules(['html-lang', 'image-alt']);

conTag

AxeDevToolsBuilder.withTags(tags: String|Array)

Limita l'analisi solo a quelle regole contrassegnate con il tag fornito. Accetta un singolo tag o un array di tag.

//with a single tag
AxeDevToolsBuilder({ page }).withTags('wcag2a');

//with an array of tags
AxeDevToolsBuilder({ page }).withTags(['wcag2a', 'wcag2aa']);

disabilitaRegole

AxeDevToolsBuilder.disableRules(rules: String|Array)

Salta la verifica delle regole fornite. Accetta una stringa rappresentante un singolo ID di regola o un array di più ID di regola. Le chiamate successive a AxeDevToolsBuilder.options(), AxeDevToolsBuilder.disableRules() sovrascriveranno le opzioni specificate.

new AxeDevToolsBuilder({ page }).disableRules('color-contrast');

Opzioni di axe-core

Queste opzioni accedono alla configurazione sottostante di axe-core. Per maggiori informazioni su queste opzioni, vedi il documentazione axe-core.

configurazione

AxeDevToolsBuilder.configure(config: axe.Spec): AxeDevToolsBuilder

Imposta la configurazione per axe-core. Questo valore viene passato direttamente a axe.configure().

opzioni

AxeDevToolsBuilder.options(runOptions: axe.RunOptions): AxeDevToolsBuilder

Opzioni da passare direttamente a axe.run(). Vedi il documentazione axe-core per l'uso. Sovrascriveranno qualsiasi altra opzione configurata, comprese le chiamate a AxeDevToolsBuilder.withRules() e AxeDevToolsBuilder.withTags().

Servizio di utilizzo

Per impostazione predefinita, il servizio di utilizzo è abilitato e l'URL predefinito è https://usage.deque.com. Imposta la variabile d'ambiente AXE_TRACK_USAGE su false per disabilitarlo.

Variabili di ambiente

Queste variabili di ambiente ti permettono di configurare il servizio di utilizzo e modificare le proprietà degli eventi segnalati.

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). In Ruby, questa variabile è denominata DEQUE_DISTINCT_ID.
AXE_INCLUDE_TEST_RESULTS Booleano Imposta su true per includere i risultati completi di axe-core nell'oggetto testResults di ogni evento (predefinito è false). Supportato solo dalla CLI e dalle API di Node.js.
AXE_METRICS_URL Stringa L'URL dell'endpoint di utilizzo REST (predefinito è https://usage.deque.com)
AXE_TRACK_USAGE Booleano Imposta su false per disabilitare il servizio di reporting sull'utilizzo. Il reporting è abilitato per impostazione predefinita.
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. Per fare sì che il tuo utilizzo appaia nei Rapporti Axe, imposta questo valore sull'ID della tua organizzazione (contatta Deque per ottenerlo).
AXE_SESSION_ID Stringa falso Un UUID che identifica la sessione dell'utente
AXE_USER_ID Stringa falso L'identità di un utente specifico come un indirizzo email, un nome o un ID di accesso. I Rapporti Axe contano gli utenti unici a partire da questo valore.
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

abilitaMonitoraggio

Questo metodo consente agli utenti di scegliere se inviare o meno dati al servizio di utilizzo. L'invio è abilitato per impostazione predefinita.

.enableTracking(state: boolean)
AxeDevToolsBuilder({ page }).enableTracking(true)

impostaTrackingUrl

Questo metodo consente agli utenti di cambiare dove vengono inviati i dati delle metriche di utilizzo.

.setTrackingUrl(url: string)
AxeDevToolsBuilder({ page }).setTrackingUrl('https://foobar.biz')

impostaIdDistinto

Questo metodo consente agli utenti di cambiare quale ID distinto è memorizzato o utilizzato.

.setDistinctId(distinctId: string)
AxeDevToolsBuilder({ page }).setDistinctId('foobar')