Panoramica delle API di Python

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

Panoramica di Axe DevTools per il Web per Python, inclusi i pacchetti disponibili e le integrazioni con i framework di test

Not for use with personal data

Axe DevTools Python include:

  • versione 4 di axe-core
  • Supporto Python 3 (non supporta Python 2)
  • configurazioni di test basate su unittest, robot framework, behave, oltre a qualsiasi altro framework che utilizza asserts

Le scansioni vengono eseguite per impostazione predefinita secondo il WCAG 2.1 Livello AA, con le regole delle migliori pratiche ed esperimentali disattivate. Vedi Personalizzazione delle regole per modificare il set di regole o abilitare le migliori pratiche.

Prerequisiti

Axe DevTools richiede un binding Selenium WebDriver per un browser a tua scelta. Per utilizzare Axe DevTools, devi prima installare e configurare Selenium WebDriver.

Descrizione

Axe DevTools è composto da più parti. Il pacchetto principale è axe-devtools-api, che fornisce la logica per configurare e eseguire axe. axe-devtools-selenium viene utilizzato per consentire a axe-devtools-api di comunicare effettivamente con i browser.

Ci sono tre integrazioni con i framework di test.

axe-devtools-unittest è una libreria di asserzioni leggera per unittest che si basa su axe-devtools-api. Quando usi questa integrazione devi dichiarare axe-devtools-api come dipendenza e usarlo direttamente.

axe-devtools-robot integra Axe DevTools con il Robot Framework. axe-devtools-api e axe-devtools-selenium vengono importati automaticamente come dipendenze. Tuttavia, non interagirai con nessuno dei due. Invece, l'integrazione utilizzerà il tuo file .robot per operare axe.

axe-devtools-behave integra Axe DevTools con behave, un framework di test simile a cucumber. axe-devtools-api e axe-devtools-selenium vengono importati automaticamente come dipendenze. Tuttavia, non interagirai con nessuno dei due. Invece, l'integrazione utilizzerà il tuo file .feature per operare axe.

Elementi personalizzati e ElementInternals

A partire da Axe DevTools Python 4.13.0, le scansioni leggono le semantiche ARIA che i componenti web dichiarano in JavaScript tramite ElementInternals, piuttosto che solo gli attributi role e aria-* presenti nel markup. Non è necessaria alcuna configurazione. Le semantiche nel DOM hanno comunque la precedenza: un attributo role o aria-* esplicito sull'elemento sovrascrive il valore da ElementInternals.

I tuoi componenti devono pubblicare i loro internals affinché tutto ciò abbia effetto, e un componente che li memorizza in un campo di classe privato non può essere letto. Vedi Testare elementi personalizzati che utilizzano ElementInternals.