Riferimento API axe-devtools-behave

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
Not for use with personal data

Questo pacchetto integra axe DevTools in Behave, un framework di test Python simile a Cucumber.

Uso

Prima di poter utilizzare axe-devtools-behave, è necessario impostare alcune cose.

Innanzitutto, devi configurare l'apertura e la chiusura del browser tramite features/environment.py:

# features/environment.py

import behave_webdriver

def before_all(context):
    context.behave_driver = behave_webdriver.Chrome()

def after_all(context):
    # cleanup after tests run
    context.behave_driver.quit()

Successivamente devi importare axe-devtools-behave, cosa che puoi fare in questo modo: features/steps/axe.py:

# features/steps/axe.py

from axe_devtools_behave import *

Ora puoi utilizzare axe-devtools-behave nei tuoi file di funzionalità.

Il pacchetto axe-devtools-behave utilizza behave-webdriver, quindi tutti i passaggi di quella libreria vengono importati e resi disponibili per l'uso.

Accessibilità Passaggi di Cucumber

Gli esempi di controlli di accessibilità riportati di seguito utilizzano Then the page should be axe clean, ma tutti i controlli funzionano in modo intercambiabile con Then the page should be audited for accessibility.

La differenza è che should be axe clean esegue axe e fallisce il test se ci sono violazioni, mentre should be audited for accessibility esegue axe e salva i risultati in una axe-reports directory. should be audited for accessibility non fallisce mai.

Per costruire uno step Cucumber per l'accessibilità di axe, iniziare con lo step base e aggiungere tutte le clausole necessarie. Tutte le seguenti clausole possono essere mescolate e abbinate; tuttavia, devono apparire nell'ordine specificato:

Then the page should be axe clean [including] [excluding] [according-to] [checking-rules/checking-only-rules] [skipping-rules]

Passo base

    Then the page should be axe clean

Il passaggio base è il componente centrale del passaggio Cucumber. Si tratta di un passaggio completo di per sé e verifica che la pagina attualmente caricata sia accessibile utilizzando la configurazione predefinita di axe.a11yCheck (l'intero controllo del documento utilizza le regole predefinite).

Clausola di inclusione

    Then the page should be axe clean within "#selector"

La clausola di inclusione (within "#selector") specifica quali elementi controllare nella pagina. La clausola di inclusione deve includere un [selettore CSS] valido racchiuso tra virgolette doppie.(https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Getting_started/Selectors) Utilizzare i selettori composti per selezionare più elementi. Ad es. within "#header, .footer"

note

Per ulteriori informazioni, vedere parametro di contesto .

Clausola di esclusione

    Then the page should be axe clean excluding "#selector"

La clausola di esclusione (excluding "#selector") specifica quali elementi del documento ignorare. Fornire un selettore CSS valido racchiuso tra virgolette doppie. Utilizzare i selettori composti per selezionare più elementi. Ad esempio: excluding "#widget, .ad"

note

Per ulteriori informazioni, vedere parametro di contesto .

Utilizzare il punto e virgola (;) o la parola but per separare la clausola di esclusione da quella di inclusione, se presente.

    Then the page should be axe clean within "main"; excluding "aside"
    Then the page should be axe clean within "main" but excluding "aside"

Accessibility Standard (Tag) clausola

    Then the page should be axe clean according to: tag-name

La condizione tag specifica quale standard (o standard) di accessibilità utilizzare nel controllo della pagina. Specificare gli standard di accessibilità per nome (tag). È possibile specificare più standard separati da virgole. p.e. according to: wcag2a, section508

I nomi dei tag accettabili sono documentati(https://github.com/dequelabs/axe-core/blob/master/doc/API.md#options-parameter) insieme a un elenco completo delle descrizioni delle regole(https://github.com/dequelabs/axe-core/blob/master/doc/rule-descriptions.md) che corrispondono a ciascun tag.

Per separare la clausola tag dalla clausola precedente è possibile utilizzare un punto e virgola (;).

    Then the page should be axe clean within "#header"; according to: best-practice

Clausola di controllo delle regole

    Then the page should be axe clean checking: ruleId

La clausola checking-rules specifica ** eventuali regole aggiuntive da eseguire (oltre ai tag specificati o al set di regole predefinito). Le regole sono specificate da ID regola separati da virgole.

Per un elenco degli ID regola validi, consultare Descrizioni delle regole

Utilizzare un punto e virgola (;) o la parola and per separare la clausola delle regole di controllo dalla clausola precedente.

    Then the page should be axe clean according to: wcag2a; checking: color-contrast
    Then the page should be axe clean according to: wcag2a and checking: color-contrast

Clausola di regole esclusive

    Then the page should be axe clean checking only: ruleId

Questa clausola non è separabile. Aggiungendo la parola only alla clausola delle regole di controllo, è possibile modificare il significato del passaggio. Come descritto in precedenza, la clausola checking-rules specifica regole aggiuntive da eseguire per impostazione predefinita. Se viene utilizzata una certa parola only , vengono controllate solo le regole specificate.

Clausola di esclusione delle regole

    Then the page should be axe clean skipping: ruleId

La clausola skipping-rules specifica quali regole ignorare. Specificare lo standard di accessibilità da utilizzare (tramite la clausola tag) ignorando una regola particolare. Specificare le regole tramite ID della regola separati da virgole.

Consultare Descrizioni delle regole per un elenco di ID regola validi

Utilizzare un punto e virgola (;) o la parola but per separare la clausola di salto delle regole dalla clausola precedente.

Then the page should be axe clean according to: wcag2a; skipping: accesskeys
Then the page should be axe clean according to: wcag2a but skipping: accesskeys

Set di regole etichettati

Accedi ai set di regole taggati tramite una clausola Cucumber. Questa funzionalità consente agli sviluppatori di specificare un set di regole (ad esempio: 508, wcag2, wcag2.1) per verificare l'accessibilità della pagina.

Il codice seguente illustra la sintassi Cucumber Gherkin richiesta per valutare un set di regole specifico durante l'analisi:

Scenario: Test Page with options
  When I visit "http://abcdcomputech.dequecloud.com/"
  Then the page should be audited for accessibility within "title" according to ruleset: wcag2.1