Automated Accessibility Testing at Slack
Jan 7, 2025

Summary
This post details the integration of automated accessibility testing into Slack's desktop application using Playwright and Axe Core. It describes the exploration of embedding Axe checks into Jest and React Testing Library (RTL), the challenges encountered with Jest's custom setup and Playwright's Locator object, and the eventual workaround using Playwright's fixture model and custom test steps. The implementation involves filtering violations by criticality, excluding known issues and irrelevant rules, and saving detailed reports with screenshots. Accessibility checks are strategically placed within critical functionality tests after page loads and user interactions.