All skills
fugazi avatar

/accessibility-selenium-testing

@2149484

Accessibility testing toolkit using Selenium WebDriver 4+ with Java 21+ and axe-core engine. Use when asked to validate WCAG 2.2 AA compliance, scan pages or components for a11y violations, test keyboard navigation, audit color contrast, check ARIA semantics, generate accessibility reports, filter axe rules, debug screen reader issues, or implement POUR principles (perceivable, operable, understandable, robust).

Use this Skill: https://skilld.dev/gh/fugazi/test-automation-skills-agents/accessibility-selenium-testing

This session only. Nothing lands on disk.

referenceswcag21aa-checklist-perceivable-operable.md

≈1.8k tokens on demand. Your agent reads this file only when SKILL.md points to it.

WCAG 2.2 AA Manual Audit Checklist: Perceivable and Operable

Part of the accessibility-selenium-testing skill. See SKILL.md for full context.

Related: this file was split from the original wcag21aa-checklist.md. See the other related files in this folder.

Use this checklist to complement automated axe-core scans. WCAG 2.2 AA is a superset of 2.1 AA (adds the criteria in the "WCAG 2.2 Additions" section near the end). Many success criteria require human judgment, assistive technology testing, or design review.

Important: Automated testing catches ~30-50% of accessibility issues. This manual checklist covers what automation cannot detect.


Perceivable

Text Alternatives (1.1.1)

  • Informative images have meaningful alt text describing content
  • Decorative images use alt="" or CSS background
  • Complex images (charts, diagrams) have extended descriptions
  • Icons without text labels have accessible names
  • Image buttons have descriptive alt text for action

Time-based Media (1.2.x)

  • Videos have accurate captions
  • Audio-only content has text transcript
  • Pre-recorded video has audio description (where needed)
  • Media player controls are keyboard accessible
  • Auto-playing media can be paused/stopped

Info and Relationships (1.3.1)

  • Headings use proper hierarchy (<h1> through <h6>)
  • Lists use <ul>, <ol>, <dl> appropriately
  • Tables have <th> headers with proper scope
  • Form inputs are associated with labels (<label for="">)
  • Groups of related inputs use <fieldset> and <legend>
  • Required fields are programmatically indicated (not just asterisk)

Meaningful Sequence (1.3.2)

  • Reading order matches visual order
  • CSS doesn't create different meaning when disabled
  • Tab order follows logical sequence

Sensory Characteristics (1.3.3)

  • Instructions don't rely solely on shape, color, or position
  • "Click the red button" → "Click the Submit button"
  • Icons have text labels or accessible names

Orientation (1.3.4)

  • Content works in both portrait and landscape
  • No forced orientation unless essential

Identify Input Purpose (1.3.5)

  • Common inputs use appropriate autocomplete attributes
  • Login forms: autocomplete="username", autocomplete="current-password"
  • Address forms: autocomplete="address-line1", etc.

Use of Color (1.4.1)

  • Links are distinguishable without color (underline, icon)
  • Error/success states have text or icon, not just color
  • Charts/graphs use patterns in addition to colors
  • Required fields are not indicated by color alone

Contrast (Minimum) (1.4.3)

  • Normal text: 4.5:1 contrast ratio
  • Large text (18pt+): 3:1 contrast ratio
  • Check all states: hover, focus, disabled, error
  • Verify in both light and dark themes
  • Text over images has sufficient contrast

Resize Text (1.4.4)

  • Text resizes to 200% without loss of content
  • No horizontal scrolling at 200% zoom
  • Text doesn't get clipped or overlap

Images of Text (1.4.5)

  • Avoid images containing text
  • Logos are acceptable exception
  • If unavoidable, include alt text with the text content

Reflow (1.4.10)

  • Content reflows at 320px width (or 400% zoom)
  • No horizontal scrolling for standard content
  • Tables may scroll but content remains accessible

Non-text Contrast (1.4.11)

  • UI components: 3:1 contrast ratio
  • Focus indicators: 3:1 contrast ratio
  • Icons: 3:1 contrast ratio (if they convey meaning)
  • Form field borders: 3:1 against background

Text Spacing (1.4.12)

  • Content remains usable with increased:
    • Line height: 1.5x font size
    • Paragraph spacing: 2x font size
    • Letter spacing: 0.12x font size
    • Word spacing: 0.16x font size

Content on Hover/Focus (1.4.13)

  • Tooltips/popovers are dismissible (Escape key)
  • Content remains visible while hovering over it
  • Content persists until dismissed or no longer relevant

Operable

Keyboard (2.1.1)

  • All functionality available via keyboard
  • Tab navigates all interactive elements
  • Enter/Space activates buttons and links
  • Arrow keys work in custom components (menus, tabs)
  • Custom widgets implement expected keyboard patterns

No Keyboard Trap (2.1.2)

  • Can exit all components via keyboard
  • Modals can be closed with Escape
  • Focus doesn't get stuck in any component
  • Embedded content (iframes, widgets) allows exit

Timing Adjustable (2.2.1)

  • Session timeouts provide warning and extension option
  • Auto-updating content can be paused
  • Time limits can be turned off or extended

Pause, Stop, Hide (2.2.2)

  • Carousels have pause controls
  • Animations can be stopped
  • Auto-scrolling content has controls
  • prefers-reduced-motion is respected

Three Flashes (2.3.1)

  • No content flashes more than 3 times per second
  • Animated content is small area or low contrast

Bypass Blocks (2.4.1)

  • Skip link present ("Skip to main content")
  • Skip link is visible on focus
  • Skip link actually moves focus to main content
  • Landmarks used: <main>, <nav>, <header>, <footer>

Page Titled (2.4.2)

  • Every page has unique, descriptive <title>
  • Title describes page content/purpose
  • Dynamic pages update title appropriately
  • Pattern: "Page Name - Site Name"

Focus Order (2.4.3)

  • Focus order follows logical reading sequence
  • Modals trap focus appropriately
  • Focus returns to trigger element when modal closes
  • No unexpected focus jumps

Link Purpose (In Context) (2.4.4)

  • Link text describes destination
  • Avoid generic "Click here", "Read more"
  • If generic needed, add visually hidden context
  • Links opening new windows indicate this

Multiple Ways (2.4.5)

  • Site provides multiple ways to find pages:
    • Navigation menu
    • Search functionality
    • Sitemap
    • Table of contents

Headings and Labels (2.4.6)

  • Headings describe content they introduce
  • Form labels describe the expected input
  • Button labels describe the action

Focus Visible (2.4.7)

  • Focus indicator is always visible
  • Focus indicator has sufficient contrast
  • Custom focus styles don't hide the indicator
  • Focus indicator is visible in all themes

Pointer Gestures (2.5.1)

  • Multi-point gestures have single-pointer alternatives
  • Path-based gestures have alternatives (swipe → buttons)
  • Pinch-to-zoom has +/- buttons

Pointer Cancellation (2.5.2)

  • Actions occur on "up" event, not "down"
  • Actions can be aborted by moving pointer away
  • Single-click actions don't trigger on mousedown

Label in Name (2.5.3)

  • Accessible name includes visible text
  • "Search" button has "Search" in accessible name
  • Important for voice control users

Motion Actuation (2.5.4)

  • Shake/tilt gestures have UI alternatives
  • Motion-based features can be disabled

Source: SKILL.md on GitHub

1 warning1mo3 checks · Risk SAFE
  • Gen Agent Trust Hub1mo

    The accessibility-selenium-testing skill is a legitimate automated testing toolkit. It uses industry-standard libraries like Selenium WebDriver and the axe-core engine to perform accessibility audits. No malicious patterns, obfuscation, or unauthorized data access were detected.

  • Socket1mo

    No alerts

  • Snyk1mo

    Risk: MEDIUM · 1 issue

Signed by skilld at 2149484. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 4 days ago.

Activeupdated 2 months ago

README badge

README badge for fugazi/test-automation-skills-agents/accessibility-selenium-testing