Riferimento API Python di axe-devtools-api
Riferimento API per il pacchetto Python axe-devtools-api per l'iniezione e l'esecuzione di axe-core
Fornisce un'API per iniettare ed eseguire axe-core su una pagina web.
axe_devtools_api.Axe
Configura come eseguire axe-core ed eseguirlo sulla pagina.
report = Axe(page).with_rules("document-title", "label").analyze()Axe(page, report_configuration=None, axe_source=None)
Inizializza un'istanza di Axe con un adattatore browser e una configurazione opzionale.
page: Un adattatore del browser, come un'istanza AxeDriver da axe-devtools-selenium.
report_configuration: Facoltativo. Un oggetto di configurazione del report.
axe_source: Facoltativo. Una stringa di codice sorgente axe-core da utilizzare al posto della versione inclusa.
analyze()
Inietta axe-core nella pagina ed esegue l'analisi di accessibilità.
Restituisce un oggetto Results. Vedi Generazione di rapporti con Python per l'intera API Results e come configurare i metadati del report.
report = Axe(page).analyze()including(*selector)
Specifica la parte della pagina per l'analisi di axe-core. Per analizzare diverse parti non correlate della pagina, chiama including() una volta per ciascuna, passando un singolo selettore ogni volta.
selector: Un singolo selettore CSS per gli elementi da includere. Passare più di un selettore in una singola chiamata viene sempre interpretato come un selettore di iframe piuttosto che come inclusioni separate: ogni selettore tranne l'ultimo corrisponde a un livello di nidificazione degli iframe e l'ultimo corrisponde all'elemento da analizzare all'interno dell'iframe più interno.
Restituisce questo oggetto per concatenazione.
# Analyze .sidebar and .some-class, which are both in the top-level document
report = Axe(page).including(".sidebar").including(".some-class").analyze()
# Analyze .some-class inside the iframe matched by .sidebar-frame
report = Axe(page).including(".sidebar-frame", ".some-class").analyze()excluding(*selector)
Specifica la parte della pagina che axe-core deve ignorare durante l'analisi. Per ignorare diverse parti non correlate della pagina, chiama excluding() una volta per ciascuna, passando un singolo selettore ogni volta.
selector: Un singolo selettore CSS per gli elementi da escludere. Passare più di un selettore in una singola chiamata viene sempre interpretato come un selettore di iframe piuttosto che come esclusioni separate: ogni selettore tranne l'ultimo corrisponde a un livello di nidificazione degli iframe e l'ultimo corrisponde all'elemento da escludere all'interno dell'iframe più interno.
Restituisce questo oggetto per concatenazione.
# Skip .third-party-ad and .cookie-banner, which are both in the top-level document
report = Axe(page).excluding(".third-party-ad").excluding(".cookie-banner").analyze()
# Skip .third-party-ad inside the iframe matched by .iframe1
report = Axe(page).excluding(".iframe1", ".third-party-ad").analyze()with_rules(*rules)
Specifica le regole (per ID) che axe-core deve eseguire. Verranno utilizzate solo le regole specificate. Questa opzione è incompatibile con with_tags.
rules: Uno o più ID di regola. Vedi Descrizioni delle Regole per un elenco di ID validi.
Restituisce questo oggetto per concatenazione.
Genera RuntimeError se chiamato insieme a with_tags sulla stessa istanza.
report = Axe(page).with_rules("document-title", "label").analyze()with_tags(*tags)
Specifica le regole (per tag) che axe-core deve eseguire. Verranno utilizzate solo le regole specificate. Questa opzione è incompatibile con with_rules.
tags: Uno o più nomi di tag. Vedi tag di axe-core per un elenco di tag validi.
Restituisce questo oggetto per concatenazione.
Genera RuntimeError se chiamato insieme a with_rules sulla stessa istanza.
report = Axe(page).with_tags("best-practice", "wcag2a").analyze()disabling_rules(*rules)
Disabilita regole specifiche dall'esecuzione di axe-core.
rules: Uno o più ID di regola.
Restituisce questo oggetto per concatenazione.
report = Axe(page).disabling_rules("html-has-lang", "label").analyze()run_options(options)
Specifica opzioni di esecuzione da passare ad axe-core quando si chiama axe.run.
options: Oggetto di opzioni da passare ad axe-core.
Restituisce questo oggetto per concatenazione.
options = {"iframes": False}
report = Axe(page).run_options(options).analyze()configure(spec)
Configura axe-core tramite axe.configure.
spec: Oggetto spec da passare a axe.configure.
Restituisce questo oggetto per concatenazione.
report = Axe(page).configure(spec).analyze()without_iframe_sandboxes()
Rimuovi l'attributo sandbox da iframe in modo che axe-core possa funzionare al loro interno.
Restituisce questo oggetto per concatenazione.
report = Axe(page).without_iframe_sandboxes().analyze()with_config_file(config_path)
Imposta il percorso a un file di configurazione del ruleset. Il percorso predefinito è config/axe-ruleset.json, o il valore della variabile d'ambiente $AXE_RULESET_PATH se impostata.
config_path: Percorso al file di configurazione.
Restituisce questo oggetto per concatenazione.
report = Axe(page).with_config_file("path/to/file.json").analyze()with_ruleset(ruleset_id, enable_best_practices=False)
Utilizzare un set di regole specifico per l'esecuzione di axe-core.
ruleset_id: ID del ruleset da usare. Ruleset disponibili: wcag2, wcag2.1, wcag2.2, wcag2aaa, wcag2.1aaa, wcag2.2aaa, 508, en301549, ttv5, rgaav4.
enable_best_practices: Se abilitare le regole etichettate best-practice. Il valore predefinito è False.
Restituisce questo oggetto per concatenazione.
report = Axe(page).with_ruleset("508").analyze()set_legacy_mode(state=True)
Usa axe.run invece di axe.runPartial. Ha implicazioni cross-origin.
state: Se abilitare la modalità legacy. Il valore predefinito è True.
Restituisce questo oggetto per concatenazione.
report = Axe(page).set_legacy_mode().analyze()Servizio di Utilizzo
Ottieni informazioni sulle tendenze di utilizzo di Axe DevTools all'interno della tua organizzazione. Per impostazione predefinita, il servizio di utilizzo è abilitato e riporta a https://usage.deque.com. Imposta la variabile di ambiente AXE_TRACK_USAGE su false per disabilitarlo.
Variabili d'ambiente del servizio di utilizzo
Queste variabili d'ambiente ti consentono 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 |
enable_tracking(state)
Acconsenti o meno all'invio di dati al servizio di utilizzo. L'invio è abilitato per impostazione predefinita.
state: Se il tracciamento è abilitato.
Restituisce questo oggetto per concatenazione.
report = Axe(page).enable_tracking(True).analyze()set_tracking_url(url)
Impostare dove inviare i dati delle metriche di utilizzo.
url: URL a cui verranno inviati i dati.
Restituisce questo oggetto per concatenazione.
report = Axe(page).set_tracking_url("https://usage.deque.com").analyze()set_distinct_id(id)
Impostare l'ID distinto utilizzato per inviare le metriche di utilizzo.
id: ID univoco da inviare.
Restituisce questo oggetto per concatenazione.
report = Axe(page).set_distinct_id("SOMEUUID").analyze()