Selenium accessibility testing

Selenium accessibility testing für echte UI-Zustände.

Stellen Sie pro Zustand einen WebDriver-Ablauf zusammen: axe prüft maschinenlesbare Regeln, Selenium den Tastaturweg. Bedeutung, Zoom und Screenreader bleiben bewusste manuelle Gates.

Teststrecken-Builder

Zustand wählen. Prüfgleise schalten.

Noch nicht erzeugt
Automatisch
Manuelles Gate

Ein grüner CI-Lauf belegt keine WCAG-Konformität.

WebDriverJS-Ticket

Dialog öffnen

await driver.get("https://example.org/konto");
await driver.findElement(By.css('[data-open-dialog]')).click();
const audit = await new AxeBuilder(driver).analyze();
assert.equal(audit.violations.length, 0, 'axe-Befunde prüfen');
const focused = await driver.switchTo().activeElement();
assert.equal(
  await driver.executeScript(
    'return arguments[0].matches(arguments[1])',
    focused,
    "[role=\"dialog\"] button"
  ),
  true,
  "Fokusziel [role=\"dialog\"] button erwartet"
);
const focusBeforeTab = await driver.switchTo().activeElement();
await driver.actions().sendKeys(Key.TAB).perform();
const focusAfterTab = await driver.switchTo().activeElement();
assert.equal(
  await driver.executeScript(
    'return arguments[0] !== arguments[1]',
    focusBeforeTab,
    focusAfterTab
  ),
  true,
  'Tab soll den Fokus zum nächsten Ziel bewegen'
);

Szenario kann konfiguriert werden.