Shift Left for Inclusion: Scalable Accessibility Testing with Cypress - CypressConf 2025
LudovicoBesana
9 views
43 slides
Oct 21, 2025
Slide 1 of 80
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
About This Presentation
Learn how to integrate accessibility testing early in your development cycle using Cypress Accessibility. This talk is based on a deep dive into the tool, extracting practical strategies, actionable tips, and insights to foster a truly inclusive quality culture. We'll explore how to enable autom...
Learn how to integrate accessibility testing early in your development cycle using Cypress Accessibility. This talk is based on a deep dive into the tool, extracting practical strategies, actionable tips, and insights to foster a truly inclusive quality culture. We'll explore how to enable automated checks with zero setup, generate meaningful reports, and integrate everything seamlessly into your CI pipeline, with the goal of reducing accessibility debt and increasing your product's real-world impact.
The European Accessibility Act is coming. Is your team ready?
Size: 25.73 MB
Language: en
Added: Oct 21, 2025
Slides: 43 pages
Slide Content
Shift Left for Inclusion:
Scalable Accessibility Testing
with Cypress
@ludovicobesana
SheTech Ambassador
Grafana & BrowserStack Champion
Startups Co-Founder
Open Source Contributor
Some passions: , ,
About me
@ludovicobesana
@ludovicobesana
The Persona Spectrum del Microsoft's Inclusive 101 Toolkit.
@ludovicobesana
@ludovicobesana
Accessibility
services can be used by people of all abilities, including those with
disabilities.
Goal: To remove barriers that could prevent someone from using a
product effectively, ensuring equal access for everyone.
@ludovicobesana
Why Accessibility Matters
@ludovicobesana
1 in 6 people worldwide live with a
disability (WHO, 2023)
In Italy, over 3 million users face digital
accessibility challenges (ISTAT)
$13 trillion in global purchasing power
from the disabled community (source:
Purple Pound)
@ludovicobesana
@ludovicobesana
@ludovicobesana
@ludovicobesana
What if was built
with barriers?
96% of the web
@ludovicobesana
96%
@ludovicobesana
Only 3% of websites meet the
minimum WCAG AA standards.
A web that is almost entirely non-compliant.
@ludovicobesana
@ludovicobesana
Do you include accessibility
testing in your QA process
(yes or no)?
@ludovicobesana
The harsh reality
@ludovicobesana
@ludovicobesana
@ludovicobesana
Main Challenges
Learning curve for teams
Perception that accessibility “slows down” development
Lack of organizational priority
No clear ownership within teams
@ludovicobesana
Accessibility Debt
@ludovicobesana
Accessibility Debt
Effects: Regressions, higher costs, legal risks, loss of users
Analogous to technical debt, but far more visible to users
@ludovicobesana
@ludovicobesana
Toxic Dynamics
“Finger pointing” between teams: designers blame developers, developers
blame PMs, QA is stuck in the middle — often without the tools to fix the problem.
Treating accessibility only as remediation (a post-release fix) leads to:
An endless backlog of bugs
Frustrated developers
Delayed releases
@ludovicobesana
What if I wanted to ignore
accessibility?
@ludovicobesana
Legal Risks and Penalties
face significant fines for failing to comply with accessibility regulations such as
WCAG and the Italian Law 4/2004.
Lawsuits: High-profile cases — like the Domino’s Pizza lawsuit in the U.S. —
show the financial risks of ignoring accessibility, with penalties reaching
hundreds of thousands of dollars.
Damaged Reputation: Not meeting accessibility standards can severely harm
a company’s reputation and erode customer trust.
@ludovicobesana
European Accessibility Act
Mandatory for:
Companies releasing digital products or services from June 2025
eCommerce, websites, mobile apps, e-books, software, banking, ecc.
Exemptions:
Micro-enterprises (<10 employees and <€2M turnover)
SMEs: exempt only if compliance causes a disproportionate burden (must be
documented and updated every 5 years)
What changes:
Transition from limited obligations to widespread enforcement across almost all
digital service providers.
@ludovicobesana
@ludovicobesana
How we can
solve this?
@ludovicobesana
@ludovicobesana
The Crucial Role of Design
About 60% of accessibility issues can be resolved during the design phase.
Designers can directly address 27 WCAG success criteria, including:
Color contrast
Navigation order
Visible focus indicators
Alternative text for images
Proper heading hierarchy
Always keep in mind the four WCAG principles:
Perceivable, Operable, Understandable, and Robust.
@ludovicobesana
Always the
four WCAG principles:
keep in mind
@ludovicobesana
Perceivable, Operable, Understandable, and Robust.
Make sure your design is
accessible from the start.
@ludovicobesana
@ludovicobesana
Recognize Common Accessibility Issues
Images without alternative text (alt text)
Missing labels on form fields
No visible keyboard focus
Illogical reading or navigation order
Improperly structured headings (H1, H2, H3…)
Vague or non-descriptive links (e.g., “Click here”)
Elements not accessible via keyboard (e.g., menus or sliders)
Overuse of tooltips or hover-only elements
Missing alternative text for video/audio content (captions, transcripts)
@ludovicobesana
Shift Left
@ludovicobesana
@ludovicobesana
What is
Shift Left?
@ludovicobesana
@ludovicobesana
In practice
Development: Use semantic HTML and linting (eslint-plugin-jsx-
a11y)
Testing: Automate A11y in Cypress
CI/CD: Enforce with Results API and branch gating
@ludovicobesana
REMEMBER:
Even if all automated tests pass, your
website or app might still not be 100%
accessible.
@ludovicobesana
We need to combine
automation with manual testing.
@ludovicobesana
Cypress + cypress-axe
Runs axe-core directly inside your Cypress tests
Adds two key commands:
→ injects the axe library into the page
→ runs accessibility checks on the current DOM
Fully customizable scope (e.g., #main, .modal, [role="dialog"])
Integrates with local and CI runs
cy.checkA11y()
@ludovicobesana
@ludovicobesana
@ludovicobesana
@ludovicobesana
@ludovicobesana
@ludovicobesana
@ludovicobesana
Approach A: Pros & Cons
Pros:
Full control over where and when checks run
Open source, free, quick to set up
Excellent for small projects or CI prototypes
Cons:
Slows down functional tests
Limited coverage (checks only current state)
Basic text-based reporting — no dashboards
@ludovicobesana
Premium (Cypress Accessibility Cloud)
Zero setup: no code changes required
Scans DOM snapshots captured during every Cypress run
Detects violations across all page states (modals, hover, transitions)
Produces rich dashboards:
Run Summary
Views (per page)
Rules (per violation)
Branch Review (diffs between PRs)
Integrates with CI/CD and Results API for gating
@ludovicobesana
@ludovicobesana
@ludovicobesana
@ludovicobesana
@ludovicobesana
Branch Review & Results API
→ Shows New and Resolved accessibility issues
Results API: Enables automation gates (e.g., fail build if new criticals detected)
Use as quality gate in CI/CD pipelines
Tip: Integrate API results into Slack or Jira for instant team feedback
@ludovicobesana
@ludovicobesana
@ludovicobesana
Approach B: Pros & Cons
Pros:
Zero setup, full automation
Covers every state captured by your tests
Visual dashboards and trend analytics
Great for distributed teams
Cons:
Cloud-only (requires Cypress Cloud account)
Subscription cost for advanced features
Not ideal for offline or self-hosted environments
@ludovicobesana
Start early:
reduce accessibility debt
Use a hybrid approach:
local development + cloud and
don’t forget about manual tests
Inclusivity Drives
Product Success
3 Take Aways
@ludovicobesana
If automation removes friction,
what’s stopping us from building
a ?more accessible web
@ludovicobesana
“Accessibility—essential for some,
useful for all.”
—W3C WAI
@ludovicobesana