HTML Academy · Lektion

Pa11y og axe til tilgængelighedstest

Automatisér tilgængelighedstjek med pa11y og axe-core

Lektion 3 af 414 trin

Pa11y og axe til tilgængelighedstest er en gratis HTML Academy-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i HTML Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. HTML Academy-kurset indeholder 4 lektioner i alt.

Automatiske værktøjer til tilgængelighed

Pa11y og axe-core er open source-værktøjer, der automatiserer tilgængelighedsafprøvning i overensstemmelse med WCAG. Begge fortolker en side, kører regler mod DOM'en og rapporterer overtrædelser. Fang størstedelen af tilgængelighedsproblemerne automatisk, og gem manuel afprøvning til resten.

axe-core: Biblioteket

axe-core er et JavaScript-bibliotek, der driver tilgængelighedsanalyserne i Chrome DevTools, Lighthouse, Jest, Cypress, Playwright og mange andre værktøjer. Det er de facto-standarden for automatisk tilgængelighedsafprøvning — bred regeldækning og få falske positiver.

axe-browserudvidelsen

Browserudvidelsen axe DevTools (Chrome, Firefox, Edge) tilføjer en fane med navnet "Accessibility" til DevTools. Klik på "Scan alle sider", så viser den alle overtrædelser med berørte elementer, alvorlighedsgrad og vejledning i, hvordan de udbedres. Den er bedst til enkeltstående analyser under udviklingen.

Pa11y CLI

Pa11y er en Node.js-CLI: npx pa11y https://example.com analyserer en URL. Den skriver en liste over problemer til terminalen. Brug den til hurtige analyser, i shellscripts eller til CI-integration med lavt ressourceforbrug.

npx pa11y https://example.com
# or for multiple pages
npx pa11y-ci --sitemap https://example.com/sitemap.xml

axe-integration med Playwright

Kombiner axe-core med Playwright til end-to-end-afprøvning af tilgængelighed: const results = await new AxeBuilder({ page }).analyze(). Kontrollér, at results.violations.length === 0. Det fanger forringelser, før de når produktionen.

import { test, expect } from "@playwright/test";
import AxeBuilder from "@axe-core/playwright";

test("home page accessibility", async ({ page }) => {
  await page.goto("/");
  const results = await new AxeBuilder({ page }).analyze();
  expect(results.violations).toEqual([]);
});

Jest-axe til komponenter

jest-axe kører axe mod renderede komponenter i Jest-afprøvninger. Render komponenten med React Testing Library, og giv containeren videre til axe: expect(await axe(container)).toHaveNoViolations(). Nu indeholder hver komponentafprøvning også en tilgængelighedskontrol.

Konfiguration af regler

Begge værktøjer lader dig deaktivere eller ændre regler pr. projekt: slå regler fra, der er i konflikt med bevidste designbeslutninger, og gør regler, der er kendt som kritiske, strengere. Dokumenter alle deaktiverede regler med en kommentar, der forklarer hvorfor — det er den sammenhæng, fremtidige udviklere har brug for.

Begrænsninger ved automatisering

Automatiske værktøjer fanger cirka 30-40 % af WCAG-problemerne. Resten (meningsfuld fokusrækkefølge, læsbar alt-tekst, semantisk overskriftshierarki og ARIA-brug, der afspejler den faktiske brugerfladeadfærd) kræver manuel gennemgang. Automatisering er nødvendig, men ikke tilstrækkelig, for at opnå tilgængelighed.

Afprøvning med ægte hjælpemiddelteknologi

Afprøv med NVDA på Windows, VoiceOver på Mac og JAWS til målgrupper i virksomheder. Afprøvning med rigtige skærmlæsere afslører problemer, som automatisering ikke kan — forvirrende oplæsninger, ødelagte landmærker og ulogisk fokusrækkefølge. Én gang pr. udgivelse med hver større skærmlæser er et rimeligt udgangspunkt.

Afprøvning med brugere

Den mest værdifulde validering af tilgængelighed kommer fra brugere med handicap, der anvender det faktiske produkt. Rekrutter gennem konsulentfirmaer inden for tilgængelighed, universiteters handicapservices eller afprøvningsplatforme som UserTesting.com. Deres feedback fra virkeligheden fanger problemer, som ingen automatiske værktøjer finder.

Strategi for CI-integration

Bloker PR'er ved forringelser af tilgængeligheden (nye overtrædelser), men ikke ved gamle overtrædelser (den eksisterende baseline). På den måde hæver du løbende niveauet uden at blokere for udgivelse. Følg det samlede antal overtrædelser over tid som en tidlig indikator for den generelle tilgængelighed.

Kombination af værktøjer

Brug flere værktøjer: axe til den omfattende automatiske kontrol, Pa11y som en ekstra vurdering og manuel afprøvning med skærmlæsere til den kvalitative del. Overlapningen er begrænset; tilsammen dækker de flere problemer, end noget enkelt værktøj kan finde.

Videnstjek

Hvor stor en procentdel af WCAG-problemer med tilgængelighed kan pålideligt fanges af automatiske værktøjer som axe og Pa11y?

Opsummering

axe-core driver de fleste tilgængelighedsanalyser; browserudvidelsen er god til enkeltstående kontroller, mens jest-axe- og Playwright-integrationer er gode til løbende afprøvning. Pa11y er en supplerende CLI. Automatisering fanger cirka 30-40 % af problemerne; kombiner den med manuel afprøvning med skærmlæsere (NVDA, VoiceOver) og afprøvning med rigtige brugere med handicap for fuld dækning. Bloker nye forringelser i CI uden at blokere på den eksisterende baseline.

Gratis at komme i gang

Lær HTML med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
40
Lektioner
159

Ofte stillede spørgsmål

Er lektionen “Pa11y og axe til tilgængelighedstest” gratis?

Ja — alle 3 lektioner i læringssporet HTML Academy, inklusive “Pa11y og axe til tilgængelighedstest”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. HTML Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Pa11y og axe til tilgængelighedstest”?

Automatisér tilgængelighedstjek med pa11y og axe-core Du øver dig i HTML Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på HTML Academy?

Der kræves ingen tidligere erfaring. HTML Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.

Hvor lang tid tager lektionen “Pa11y og axe til tilgængelighedstest”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne HTML Academy-lektion?

Ja. Alle HTML Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. W3C Markup Validator
  2. Lighthouse-HTML-audit
  3. Pa11y og axe til tilgængelighedstest
  4. HTML-snapshot-test
← Tilbage til HTML Academy