QAID Docs

Accessibility Testing

QAID automatically scans your pages for WCAG accessibility violations and tracks remediation progress.

License: Accessibility Testing requires Pro or Enterprise tier.

Overview

Accessibility Testing detects WCAG compliance issues on your pages:

  • Automated scanning after each element crawl (no extra step needed)
  • Rule-based detection covering WCAG 2.1 Level A and AA standards
  • Severity levels — critical, serious, moderate, minor
  • Status tracking — triage violations as open, fixed, false-positive, or ignored
  • Deduplication — same issue across pages is grouped by rule

How Scanning Works

Automatic Scanning

Accessibility scanning runs automatically after each element extraction (crawl) job completes. No manual action is required — violations appear in the Discovery step when the scan finishes.

Manual Scanning

Accessibility scans can be re-triggered for a project from the Discovery step in the UI.

What's Checked

QAID scans for WCAG 2.1 Level A and AA compliance, including:

CategoryExample Rules
Color & ContrastText contrast ratios, color-only indicators
FormsMissing labels, unlabeled inputs, required field indicators
ImagesMissing alt text, decorative image handling
StructureHeading hierarchy, landmark regions, list structure
Links & ButtonsEmpty links, missing button labels, link purpose
ARIARequired ARIA attributes, valid roles, state management
KeyboardFocus order, keyboard traps, skip navigation

Authenticated Pages

If your project has authentication configured, the scanner logs in before scanning to access protected pages.

Viewing Results

Location

Accessibility violations appear in two places:

  • Discovery step — Below the pages list
  • Dashboard (Overview) — Summary panel

Violation Groups

Violations are grouped by rule (e.g., all color-contrast violations together):

  • Rule name and description
  • Impact level badge (critical/serious/moderate/minor)
  • Page count — how many pages have this violation
  • Violation count — total instances across all pages

Click a group to expand and see individual violations with:

  • Affected page URL
  • Element CSS selector
  • HTML snippet of the affected element
  • Failure summary (specific reason for the violation)
  • Help link to remediation guidance for the specific WCAG rule

Summary Statistics

The summary header shows:

  • Total open violations with impact breakdown
  • Last scan date and pages scanned count
  • Quick counts for critical, serious, moderate, and minor issues

Impact Levels

Violations are categorized by severity:

ImpactMeaningAction
CriticalComplete barrier to accessibilityFix immediately — users cannot access content
SeriousSignificant accessibility issueFix soon — major usability problem
ModerateMinor accessibility concernPlan fix — some users affected
MinorBest-practice violationFix when convenient — cosmetic issue

Violations are sorted by impact (critical first).

Managing Violations

Status Workflow

Each violation has a status:

StatusMeaningWhen to Use
OpenUnresolved, needs attentionDefault for new violations
FixedDeveloper has resolved itAfter deploying a fix
False PositiveNot a real issueWhen the scanner flags something incorrectly
IgnoredAcknowledged but won't fixBusiness decision to accept the violation

Triaging Individual Violations

  1. Expand a violation group
  2. Click the status dropdown on a specific violation
  3. Select the new status: Open, Fixed, Ignore, or False Positive

Bulk Operations

For triaging many violations at once:

  1. Use the checkboxes to select individual violations
  2. Or use the group-level checkbox to select all violations in a rule
  3. Click the bulk action button: Mark Fixed, Ignore, or False Positive

You can also use the per-group dropdown ("Set all...") to apply a status to all violations in that rule at once.

Persistence Across Scans

Triaged violations persist across scans:

  • Open violations are replaced by fresh scan results
  • Fixed, False Positive, and Ignored violations are preserved — they won't reappear as new after the next scan

This means you only need to triage each violation once. If the same issue is detected again after being marked as fixed, it will appear as a new open violation.

Filtering

Status Filter

Filter violations by status:

  • All Statuses (default)
  • Open
  • Fixed
  • False Positive
  • Ignored

Impact Filter

Filter by severity:

  • All Impacts
  • Critical
  • Serious
  • Moderate
  • Minor

Both filters can be combined (e.g., show only open + critical violations).

Scan History

View past scan runs to track progress over time. Each run shows:

  • Timestamp
  • Pages scanned count
  • Total violations found
  • Duration
  • Impact breakdown (critical/serious/moderate/minor counts)

Best Practices

Prioritize by Impact

  • Address critical and serious violations first
  • These represent genuine barriers that prevent users from accessing content
  • Minor violations can be addressed during regular maintenance

Use False Positive Wisely

  • Some rules may flag dynamic content incorrectly
  • Mark as false positive only after manual verification
  • False positives are excluded from open counts

Track Progress

  • Run scans regularly (they auto-trigger on each crawl)
  • Monitor the open violation count trending downward
  • Use the summary to identify top rules with the most violations

Fix at the Source

  • Accessibility violations are best fixed in your application code
  • Use the help link on each violation for detailed remediation guidance
  • Common fixes: add alt text, fix contrast ratios, add form labels, fix heading hierarchy

Test After Fixes

  • Re-run element extraction to trigger a new accessibility scan
  • Verify that previously open violations are no longer detected
  • Check that fixes didn't introduce new violations

Troubleshooting

No Violations Showing

Possible causes:

  • Scan hasn't run yet — trigger element extraction first
  • All violations are triaged (filtered out) — check the status filter
  • Pages require authentication — configure auth in project settings

Too Many Violations

Solutions:

  • Filter by critical/serious impact to focus on high-priority issues
  • Use bulk operations to triage groups of similar violations
  • Address violations by rule (fix one rule type across all pages)

Scan Seems Incomplete

Possible causes:

  • Some pages timed out during scanning
  • Authentication failed for some pages
  • Pages with heavy JavaScript may not fully render

Solutions:

  • Check that all pages load correctly in a browser
  • Verify authentication settings
  • Increase JS wait time in project settings

On this page