Test Suite
Link Text & Broken Links
Tests axe-core rule link-name and Vesper custom checks vesper-ambiguous-link and vesper-duplicate-link-text. Also includes intentionally broken URLs for link checker testing.
Empty link — no text or label
FAIL — axe-core: link-name (serious). Anchor with no text content and no aria-label.
Generic ambiguous link text
FAIL — vesper-ambiguous-link (moderate). Accessible name matches a known non-descriptive phrase.
To learn about Vesper Inspect, click here.
For more details about Vesper Audit, read more.
See event schedule — details.
View latest news — more info.
Learn more about accessibility.
Annual report — download.
Raw URL as link text
FAIL — vesper-ambiguous-link (moderate). Screen readers announce raw URLs character by character.
For more information visit https://www.w3.org/WAI/.
Rule documentation is at www.dequeuniversity.com/rules/axe/.
Duplicate link text — different destinations
FAIL — vesper-duplicate-link-text (serious). Four links share the accessible name "Read more" but go to four different pages.
Raw phone number — tel: link
FAIL — vesper-ambiguous-link (moderate). Accessible name consists only of phone characters with no descriptive label.
Main office: +1 (503) 555-0100
Support line: 1-800-555-0199
Raw email address — mailto: link
FAIL — vesper-ambiguous-link (moderate). Accessible name is a bare email address with no contextual label.
General enquiries: hello@example.com
Event bookings: events@example.com
Descriptive link text — correct
PASS — links clearly describe their destination without relying on surrounding visual context.
Disambiguated duplicate links — aria-label
PASS — visually identical "Read more" links are distinguished for screen reader users via aria-label.
Properly labelled contact links — correct
PASS — tel: and mailto: links use aria-label to give context beyond the raw number or address.
Main office: +1 (503) 555-0100
Support line: 1-800-555-0199
General enquiries: hello@example.com
Event bookings: events@example.com
Intentionally broken external links
BROKEN — these URLs should be flagged by the link checker
Valid external links
PASS — these should resolve cleanly