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 personalizzato contemporaneamente.

Costruttore di Axe DevTools Playwright:

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

Devi passare un'istanza di PlaywrightPage come primo argomento. Il secondo argomento può essere un id di set di regole o un oggetto axe. Se non fornisci un secondo argomento, devi configurare il file di configurazione delle regole personalizzate @axe-devtools/script-builder, altrimenti il costruttore lancerà un'eccezione. Deve essere chiamato con la parola chiave 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 di regole personalizzate con Axe DevTools, leggi la guida sulla generazione e integrazione di set di regole personalizzate nella 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 esistente analyze() è invariato.

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 di elementi da includere nell'analisi. Gli elementi al di fuori dell'ambito passato a .include() non saranno scansionati.

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

esclude

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

Aggiunge un selettore CSS all'elenco di elementi da escludere dall'analisi. Saranno scansionati solo gli elementi al di fuori dell'ambito passato a .exclude() saranno 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, eccetto per 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 che rappresenta un singolo ID di regola o un array di più ID di regola. 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 ulteriori informazioni su queste opzioni, vedere la documentazione di 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 la documentazione axe-core per l'uso. Sovrascriverà tutte le altre opzioni configurate, incluse le chiamate a AxeDevToolsBuilder.withRules() e AxeDevToolsBuilder.withTags().

Servizio di utilizzo

Per impostazione predefinita, il servizio di utilizzo è disabilitato e l'URL predefinito è https://usage.deque.com.

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)
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

abilitaMonitoraggio

Questo metodo consente agli utenti di scegliere di inviare dati al servizio di utilizzo.

.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')