Skip to main content
Cypress无障碍测试高级解决方案

无障碍评分

Cypress 提供总体百分比评分,用于反映项目的整体无障碍水平。该评分针对每次测试运行计算,反映了运行期间捕获的所有应用程序快照的平均得分。其计算基于每个快照中通过/未通过的无障碍检查比例,并根据问题严重程度进行加权。

严重级别

Cypress Accessibility 的严重级别与 Axe Core® 影响分类保持一致。这套由 Deque Systems 开发的分类标准通过突出最可能对用户造成重大障碍的问题(如缺失标签文本),帮助优先处理无障碍问题。您可以在 Axe Core® 文档 中了解更多关于影响分类的信息。

注:WCAG 标准并未按严重性对成功准则进行分类;所有失败项都需要解决才能达标。但 Axe Core® 影响级别有助于优先修复问题,从而快速实现最大的可用性改进。

评分算法

无障碍评分计算会对快照中未通过的无障碍检查应用以下权重。

问题严重性权重
严重(Critical)10
重大(Serious)7
中等(Moderate)3
轻微(Minor)1

评分计算流程

  1. 快照得分:
  • 计算通过检查的总权重
  • 计算未通过检查的总权重
  • 按公式计算得分:得分 = (通过权重) / (通过权重 + 未通过权重)

注意:未完成(Incomplete)和已忽略(Ignored)元素状态不会影响评分。只有明确的规则失败才会被计入。

  1. 视图得分:
  • 计算视图中所有快照得分的平均值
  1. 运行得分:
  • 计算运行中所有快照得分的平均值

解读评分

无障碍评分应结合具体项目和目标来理解。没有任何单一数字能完全反映应用程序的无障碍水平。例如:

  • 如果先前得分较低,99% 的分数可能表明取得了进展,但单个失败项可能代表重大障碍(例如无法访问的登录页面)
  • 即使是 100% 的分数也不能保证完全合规或用户友好,仅表示 Axe Core® 在测试范围内未检测到违规

评分的核心价值在于计算方式在多次运行中保持一致——Cypress 不会在测试执行期间临时捕捉任何内容。这意味着分数的变化能可靠反映无障碍改进或退步。

一般来说,理想状态是在 Cypress Accessibility 报告中获得 100% 的干净分数,这可以通过修复现有问题和忽略已知不会修复的问题来实现。

100% 分数的含义

Cypress Accessibility 的 100% 分数表示:

  • 在测试范围内未检测到 Axe Core® 违规
  • 通常通过手动审计发现的约 57% 问题已得到解决(来源
  • 虽然不能保证完全合规,但表明团队已积极考虑无障碍需求,并为解决用户报告问题或手动审计发现做好了准备

达到 100% 分数(也称为 "Axe-clean")意味着应用程序很可能满足残障用户的基本使用需求,为进一步的可用性增强奠定了基础。

提升无障碍评分

解决违规问题

大多数无障碍违规问题可以通过 HTML 和 CSS 调整来解决。Cypress Accessibility 中的每个违规项都包含 "了解更多" 链接,帮助理解问题对用户的影响,并提供分步修复指导。

有关理解和解决违规问题的更多信息,请参阅 检查违规详情部分

忽略非相关问题

对于决定不修复的问题,请更新 配置 将其忽略。这可以使评分聚焦于可操作的问题,同时保持对已忽略元素的透明度。

通过积极解决违规问题并保持干净的评分,您的团队可以确保持续推进应用程序的无障碍改进。