axe-devtools-behave API-referentie

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

API-referentie voor het axe-devtools-behave pakket voor op Behave gebaseerde Python-tests

Not for use with personal data

Dit pakket integreert Axe DevTools in Behave, een cucumber-achtig python test framework.

Gebruik

Voordat je axe-devtools-behave kunt gebruiken, moet je een paar zaken instellen.

Ten eerste moet je het openen en sluiten van een browser configureren, via 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()

Vervolgens moet je axe-devtools-behave importeren, wat gedaan kan worden in features/steps/axe.py:

# features/steps/axe.py

from axe_devtools_behave import *

Nu kun je gebruik maken van axe-devtools-behave in je feature-bestanden.

Het axe-devtools-behave pakket maakt gebruik van behave-webdriver, dus alle stappen uit die bibliotheek zijn geïmporteerd en beschikbaar voor gebruik.

Toegankelijkheids-Cucumber-Stappen

De onderstaande voorbeeldtoegankelijkheidscontroles gebruiken Then the page should be axe clean, maar alle controles werken verwisselbaar met Then the page should be audited for accessibility.

Het verschil is dat should be axe clean axe uitvoert en de test faalt als er overtredingen zijn, terwijl should be audited for accessibility axe uitvoert en de resultaten opslaat in een axe-reports directory. should be audited for accessibility faalt nooit.

Om een axe-toegankelijkheids-Cucumber-stap te construeren, begin je met de basisstap en voeg je de noodzakelijke clausules toe. Al de volgende clausules kunnen gecombineerd en gemixt worden; echter, ze moeten in de aangegeven volgorde verschijnen:

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

Basisstap

    Then the page should be axe clean

De basisstap is het kernonderdeel van de Cucumber-stap. Het is een volledige stap op zichzelf en verifieert dat de momenteel geladen pagina toegankelijk is met de standaardconfiguratie van axe.a11yCheck (de controle van het gehele document gebruikt de standaardregels).

Insluitingsclausule

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

De insluitingsclausule (within "#selector") specificeert welke elementen op de pagina gecontroleerd moeten worden. De insluitingsclausule moet een geldige CSS-selector bevatten omggeven door dubbele aanhalingstekens. Gebruik samengestelde selectors om meerdere elementen te selecteren. Bijv. within "#header, .footer"

note

Zie context parameter voor aanvullende informatie.

Uitsluitingsclausule

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

De uitsluitingsclausule (excluding "#selector") specificeert welke documentelementen genegeerd moeten worden. Geef een geldige CSS-selector op, omgeven door dubbele aanhalingstekens. Gebruik samengestelde selectors om meerdere elementen te selecteren. Bijv. excluding "#widget, .ad"

note

Zie context parameter voor aanvullende informatie.

Gebruik de puntkomma (;) of het woord but om de uitsluitingsclausule te scheiden van de insluitingsclausule indien aanwezig.

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

Toegankelijkheidsstandaard (Tag) clausule

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

De tagclausule specificeert welke toegankelijkheidsstandaard (of standaarden) in de paginacontrole gebruikt moeten worden. Geef de toegankelijkheidsstandaarden op bij naam (tag). Meerdere standaarden kunnen worden opgegeven wanneer ze door komma's gescheiden zijn. Bijv. according to: wcag2a, section508

Acceptabele tag namen zijn gedocumenteerd naast een volledige lijst van regelomschrijvingen die overeenkomt met elke tag.

Gebruik een puntkomma (;) kan worden gebruikt om de tagclausule te scheiden van de voorgaande clausule.

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

Controle-regelclausule

    Then the page should be axe clean checking: ruleId

De controle-regelclausule specificeert welke aanvullende regels uitgevoerd moeten worden (naast de opgegeven tags of de standaardregels). Regels worden gespecificeerd door kommagescheiden regel-ID's.

Zie Regelomschrijvingen voor een lijst van geldige regel-ID's.

Gebruik een puntkomma (;) of het woord and om de controle-regelclausule te scheiden van de voorgaande clausule.

    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

Exclusieve Regelclausule

    Then the page should be axe clean checking only: ruleId

Deze clausule is niet apart. Door het woord only toe te voegen aan de controle-regelclausule, kun je de betekenis van de stap veranderen. Zoals eerder beschreven, specificeert de controle-regelclausule standaard welke aanvullende regels moeten worden uitgevoerd. Alleen opgegeven regels worden gecontroleerd als het woord only wordt gebruikt.

Regeloverslaande clausule

    Then the page should be axe clean skipping: ruleId

De regeloverslaande clausule specificeert welke regels overgeslagen moeten worden. Specificeer de toegankelijkheidsstandaard die je wilt gebruiken (via de tagclausule) terwijl je een bepaalde regel negeert. Specificeren van regels gebeurt door kommagescheiden regel-ID's.

Zie Regelomschrijvingen voor een lijst van geldige regel-ID's

Gebruik een puntkomma (;) of het woord but om de regeloverslaande clausule te scheiden van de voorgaande clausule.

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

Getagde regels

Toegang tot getagde regels via een Cucumber-clausule. Deze functionaliteit stelt ontwikkelaars in staat een regels (bijv.: 508, wcag2, wcag2.1) te specificeren om de toegankelijkheid van een pagina te controleren.

De volgende code demonstreert de Cucumber Gherkin-syntaxis die nodig is om een specifieke regels tijdens de analyse te beoordelen:

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