第 13 期 | Phase D: 浏览器集成测试与无障碍 (a11y) 验收

⏱ 预计阅读 3 分钟 更新于 2026/5/7
💡 进群学习加 wx: 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