返回博客

先睹为快:无障碍性(Accessibility)插件焕新升级

我们如何在 Storybook 9.0 中全面改进无障碍性(Accessibility)插件

loading
Dominic Nguyen
@domyen
最后更新

随着《欧洲无障碍法案》等即将生效的法律将于 2025 年 6 月生效,各团队正争先恐后地确保其 UI 具有无障碍性。Storybook 可帮助您加快实现 WCAG 合规的进程。

我很高兴能分享 Storybook 9 更新的无障碍性工作流的先睹为快,其中包括重新设计的插件、CI 中的自动化检查等。

您还将有机会注册抢先体验 Chromatic 的无障碍性回归测试——一个与 Storybook 集成的新工具,帮助您管理无障碍性遗留问题并防止新的违规行为出现。

Screenshot of Storybook 9.0's interface showing the new Accessibility addon panel. The panel displays accessibility violations with their severity. The left sidebar shows component navigation, with indicators for stories that have accessibility violations.

无障碍性插件的新功能

重新设计的布局

该插件现在按规则分组显示无障碍性违规,并在每条规则下列出相应的元素。

不再是嘈杂、平铺的违规列表,您将获得结构化的详细信息。快速浏览失败的规则,然后深入查看特定元素。

Close-up of the new rule-based layout in the Accessibility addon showing an 'Insufficient color contrast' violation. The panel displays detailed information about the specific elements failing the contrast ratio test, including color values and expected contrast ratio of 4.5:1

在画布中突出显示问题

点击任何违规条目,即可在画布中突出显示相应的 DOM 节点。调试变得可视化且互动性强——您不再需要为寻找选择器而烦恼,就能找出失败的原因。

该插件将问题置于上下文中,在显示无障碍性失败的同时展示渲染的 UI。这意味着更快的修复速度和更少的工具切换烦恼。

Side-by-side comparison of a chart component. Left side shows 'No highlights' with the component rendered normally, while the right side shows 'With highlights' where accessibility issues are visually emphasized within the Storybook Canvas.

每条违规条目现在都有一个唯一的、可分享的永久链接。无障碍性是一项团队合作——这些链接使得请您的常驻专家、设计师或产品经理介入变得轻而易举。

分享发布 Storybook 中任何问题的直接链接,其中包含渲染的 UI 和上下文。这对于分布式团队进行异步调试尤其有用。

Copy permalink to a given violation to share with stakeholders

在插件中重新运行无障碍性测试

现在有一个“重新运行”按钮可以手动触发测试。这对于有状态的 UI 或修改外观的交互特别有用——在这些情况下,首次渲染并不是最终状态。

自动在 Storybook Test 中运行

Storybook Test 是一个将在 9.0 版本(2025 年 5 月)中推出的新功能,它可以一次性运行功能测试、覆盖率测试和无障碍性测试——全部一次完成。点击侧边栏底部固定的测试小部件,在开发过程中测试每个 story。

此外,Storybook Test 在 CI 中运行,为您的团队提供另一层保护。您已经依赖 stories 来表达组件状态——现在它们同时兼作无障碍性测试用例。

Screenshot of Storybook Test widget showing the test panel at the bottom of the sidebar. The panel indicates three test types: Component, Coverage, and Accessibility.

Chromatic 中的无障碍性回归测试

经过改进的插件为无障碍性回归测试奠定了基础,这是 Chromatic 的一项新功能,可以跟踪一段时间内的无障碍性违规情况,并防止回归错误悄然进入您的拉取请求。这很重要,因为大多数团队都存在无法一次性解决的无障碍性遗留问题,他们需要一种在不增加更多遗留问题的情况下继续发布的方式。

虽然 Storybook 帮助单个开发者在开发过程中进行抽查,但 Chromatic 为您的整个团队提供了全面的覆盖。它为每个 story 建立了无障碍性基线——这样您就可以区分先前存在的问题和您刚刚引入的问题。

每次您推送代码时,Chromatic 都会自动运行针对您整个 Storybook 中组件的无障碍性检查。它会将当前的违规情况与基线进行比较。如果出现任何新增或更改的问题,它们将被标记以供评审。

Screenshot of Chromatic's Accessibility Regression Testing interface showing a TimePicker component with accessibility violations. The dashboard displays three new violations identified in this specific build.

将 Chromatic 与 Storybook 结合使用,使无障碍性成为一个持续的反馈循环。Chromatic 保护您的团队免受回归错误的影响,而 Storybook 允许您逐步解决和修复单个违规问题。这确保您永不倒退——即使您的应用程序不断增长,并且有更多的利益相关者加入进来。

我什么时候可以尝试?

Storybook 9 将于 2025 年 5 月发布,届时将包含改进后的无障碍性插件。请在下方注册 Storybook 邮件列表,以便在未来几周内收到所有无障碍性工作流更新的通知。

Chromatic 的无障碍性回归测试将于 4 月进入 Beta 阶段。立即注册抢先体验

加入 Storybook 邮件列表

获取最新消息、更新和发布信息

7,180名开发者及仍在增长

我们正在招聘!

加入 Storybook 和 Chromatic 背后的团队。构建被数十万开发者用于生产环境的工具。优先远程工作。

查看职位

热门文章

Storybook 9 现已进入 Beta 阶段

立即体验 UI 测试的未来
loading
Michael Shilman

Storybook 8.5

无障碍性触手可及
loading
Michael Shilman

Storybook 标签

组织您的组件和 stories,以适应您的工作方式
loading
Michael Shilman
加入社区
7,180名开发者及仍在增长
原因为何选择 Storybook组件驱动的 UI
文档指南教程更新日志遥测
社区插件参与其中博客
案例展示探索项目组件词汇表
开源软件
Storybook - Storybook 中文

特别感谢 Netlify CircleCI