# 测试说明 Aurora Admin 组件库的测试设计:**零依赖、可视化、可机读**。每个组件都有一份独立的测试页 `tests/.html`,加上 `tests/index.html` 总览入口。 ## headless 回归(v1.2.0 起,v1.3.0 修正口径) ```bash node site/dev-server.js # 先起站 node tools/run-regression.mjs # 需 npm i playwright;输出 tests/report.json + report-junit.xml ``` 无 playwright 的机器用浏览器跑法(零依赖):打开 `tests/_collect.html`,它把 79 个测试页并发装入同源 iframe,汇总后写入 `window.__aaCollectResult`(同 `report.json` 结构),从控制台取出落盘即可。 - `tests/report.json` 是首页「测试通过率」的数据源;无报告时首页静默隐藏该数字。 - 当前基线:961 条断言,通过率 **100%**(0 失败 / 36 条 N/A)、79 页全通过。 - **通过率 = pass / (pass + fail)**,N/A(静态组件无交互面、单实例组件无多变体等)不计入分母。 - N/A 是**合理豁免**而非缺陷掩盖:`dashboardcard`/`chartpanel`/`emptypro` 这类纯展示组件确实没有交互面;`watermark`/`transfer`/`listpicker` 确实只有一份实例。判定依据已逐条人工核实。 ### 通过率的边界(务必明确) 这 9 项自动化断言覆盖的是**结构性规则**,通过率 100% **不等同于 WCAG 2.1 AA 合规**。未覆盖的部分需要人工或辅助技术实测: - 屏幕阅读器朗读顺序与播报质量(NVDA / VoiceOver) - 焦点顺序是否合乎视觉逻辑、焦点陷阱(弹窗内 Tab 循环) - 动态内容变更的播报时机(`aria-live` 的实际体验) - 表单错误提示与字段的关联(`aria-describedby` 指向是否准确) - 缩放至 200% 时的布局可用性(WCAG 1.4.4) ### 断言为什么跑在 iframe 里 79 个 H5 演示页的 DOM **全部由内联脚本渲染**(body 只有 `
` + ``)。v1.2.0 曾尝试把演示页 body 抽成静态快照,但剥离 `