LinkedIn’s approach to automated accessibility (A11y) testing

Oliver Tse
10 min readintermediate
--
View Original

Overview

LinkedIn's approach to automated accessibility (A11y) testing focuses on integrating accessibility checks into their continuous integration pipeline to enhance product accessibility. The article discusses the importance of automated testing, the tools used, and strategies to mitigate performance impacts while ensuring compliance with accessibility standards.

What You'll Learn

1

How to integrate automated accessibility testing into a CI/CD pipeline

2

Why automated accessibility testing is essential for product development

3

How to effectively use Deque’s axe-core for web accessibility checks

4

When to apply manual testing alongside automated tests for accessibility

Prerequisites & Requirements

  • Understanding of accessibility standards and guidelines
  • Familiarity with continuous integration tools(optional)

Key Questions Answered

What is LinkedIn's strategy for automated accessibility testing?
LinkedIn employs automated accessibility testing to identify common issues in new features and prevent regressions in existing features. This approach integrates accessibility checks into their continuous integration pipeline, ensuring that only code that passes these checks is merged, thus maintaining high accessibility standards across their platforms.
How does LinkedIn ensure accessibility in mobile applications?
For iOS and Android applications, LinkedIn uses tailored accessibility testing frameworks, applying specific rules that cater to the unique APIs of each platform. This includes checks for label presence, touch target size, and contrast ratios, ensuring a comprehensive accessibility evaluation for mobile users.
What are the benefits of automated accessibility testing?
Automated accessibility testing helps in quickly identifying 'low-hanging fruit' issues caused by coding oversights, thereby saving engineering time. Additionally, it provides a clear signal for overall accessibility health, allowing teams to catch regressions before they affect users.
What performance impacts did automated accessibility testing have on LinkedIn's CI/CD pipeline?
The initial implementation of automated accessibility tests significantly increased the Commit to Publish (C2P) time, with tests taking more than double the execution time. This necessitated the development of a dedicated accessibility distributed test job to mitigate the performance impact.

Key Statistics & Figures

Percentage of accessibility issues identified by automated testing
20% to 30%
This statistic highlights the limitations of automated testing, emphasizing the need for manual testing to catch the remaining issues.
Increase in execution time for tests with added accessibility assertions
More than double
This significant increase prompted LinkedIn to find solutions to mitigate performance impacts on their CI/CD pipeline.
Number of daily deployments in LinkedIn's CI/CD process
At least three
This frequent deployment schedule necessitates efficient automated testing to maintain product quality.

Technologies & Tools

Frontend
Deque’s Axe-core
Used for automated accessibility testing in LinkedIn's web applications.
Mobile
Google’s Toolbox For Accessibility For Ios (gtxilib)
Utilized for accessibility checks in LinkedIn's iOS applications.
Mobile
Google’s Accessibility Test Framework For Android (atf)
Employed for accessibility testing in LinkedIn's Android applications.
Frontend
Ember Javascript Framework
Framework used for building LinkedIn's web applications, which includes accessibility testing capabilities.

Key Actionable Insights

1
Integrate accessibility checks into your CI/CD pipeline to catch issues early.
This proactive approach ensures that accessibility violations are addressed before code is merged, improving overall product accessibility and user experience.
2
Utilize Deque’s axe-core for web applications to automate accessibility testing.
This tool provides a robust framework for identifying common accessibility issues, allowing developers to focus on more complex problems that require manual testing.
3
Establish a dedicated accessibility testing job in your CI/CD process.
By running accessibility tests in parallel, you can prevent performance degradation in your build process while maintaining high testing standards.
4
Combine automated testing with manual audits for comprehensive accessibility coverage.
While automated tests can catch many issues, manual testing is essential for identifying usability problems that automated tools may miss.

Common Pitfalls

1
Relying solely on automated accessibility testing can lead to missed issues.
Automated tests can only identify a fraction of accessibility problems, so it's crucial to complement them with manual testing to ensure comprehensive coverage.
2
Neglecting performance impacts when adding accessibility assertions.
Adding too many assertions without considering their impact can slow down the CI/CD pipeline, leading to longer deployment times and potential bottlenecks.

Related Concepts

Accessibility Standards And Guidelines
Continuous Integration And Deployment Best Practices
Manual Testing Techniques For Accessibility
Performance Optimization In CI/CD Pipelines