第 13 期 | Phase D: 浏览器集成测试与无障碍 (a11y) 验收
💡 进群学习加 wx: agentupdate
(申请发送: agentupdate)
(申请发送: agentupdate)
运行测试:
node test.js
# ✅ 48/48 PASS
13.1 DOM 集成测试(test-dom.js)
class DOMTestRunner {
// 在浏览器环境中运行
// 测试按钮点击 → 显示更新
// 测试键盘事件 → 正确映射
// 测试模式切换 → CSS 变量切换 + localStorage
}
13.1.1 无障碍测试(test-a11y.js)
class A11yTestRunner {
// 验证所有按钮有 aria-label
// 验证 aria-live 存在
// 验证焦点指示器
// 验证 Tab 导航顺序
// 验证历史记录可访问
}
13.2 最终交付物
13.2.1 代码文件清单
| 文件 | 行数 | 创建者 | 说明 |
|---|---|---|---|
index.html |
65 | ui-dev | 语义化 HTML,ARIA 标签 |
style.css |
287 | ui-dev | CSS 变量双主题,响应式 |
app.js |
468 | logic-dev | Shunting-yard 引擎 + DOM 绑定 |
test-runner.js |
200 | logic-dev | 轻量测试框架 |
test.js |
679 | qa-engineer | 48 单元测试 |
test-dom.js |
550 | qa-engineer | DOM 集成测试 |
test-a11y.js |
485 | qa-engineer | 无障碍测试 |
test-runner.html |
730 | qa-engineer | 浏览器测试页面 |
13.2.2 测试结果
| 测试层次 | 用例数 | 结果 |
|---|---|---|
| 单元测试(Node.js) | 48 | ✅ PASS |
| DOM 集成测试(浏览器) | 20+ | ✅ PASS |
| 无障碍测试(浏览器) | 15+ | ✅ PASS |
13.2.3 在浏览器中运行
# 方法 1:直接打开
open index.html
# 方法 2:本地服务器
python3 -m http.server 8080
# 浏览器访问 http://localhost:8080
# 运行测试页面
open test-runner.html