Files
shz-backend/docs/test-reports/job-fair/2026-07-25/bugs/BUG-022-admin-outdoor-device-accessibility.md

49 lines
2.3 KiB
Markdown
Raw Normal View History

# BUG-022管理端户外招聘会设备管理筛选字段缺少语义关联
- 严重级别P3可访问性与表单自动化兼容性问题
- 状态:代码已修复,待测试环境浏览器复验
- 环境test
- 角色PC 监管管理员
- 入口:`/shihezi/jobfair/outdoor-fair/detail?id=12` → “设备管理”
- 发现时间2026-07-25
## 前置条件
使用测试环境监管管理员角色打开户外招聘会 `id=12` 详情,并切换到“设备管理”页签。
## 复现步骤
1. 打开“设备管理”页签。
2. 观察设备码查询输入框、设备列表及“新增设备码”入口。
3. 在 Chrome DevTools Console/Issues 或无障碍树中检查设备码字段。
## 预期结果
设备码查询输入框应有唯一、稳定的 `id/name`,并与“设备码”可见标签建立语义关联;辅助技术和自动化工具应能明确识别查询字段。
## 实际结果
页面可以加载设备列表,但表单 Issue 统计显示设备码字段未完整关联标签或字段标识:
- `No label associated with a form field`
- `A form field element should have an id or name attribute`
## 浏览器证据
- 页面截图:[JF-AD-012-admin-outdoor-devices.png](../screenshots/JF-AD-012-admin-outdoor-devices.png)
- accessibility snapshot 显示“设备码 :”文本框和“新增设备码”按钮,未呈现完整的原生字段标识。
- Console 页面累计 Issue`No label associated with a form field (count: 7)``A form field element should have an id or name attribute (count: 7)`;本页新增设备码查询字段。
- `GET /api/shihezi/cms/outdoor-fair-device/list?fairId=12&current=1&pageSize=10`HTTP 200当前测试数据返回空列表。
## 影响范围
监管管理员使用读屏、键盘辅助技术或自动化工具时,无法稳定定位设备码筛选字段;设备列表为空时,问题更难通过视觉反馈发现。
## 初步定位
设备管理页签的设备码查询 Input 没有传递完整 `id/name` 或标签关联属性。设备列表接口正常,问题位于前端筛选表单语义层。
## 建议
为设备码字段补充唯一 `id/name`,通过 `htmlFor``aria-labelledby` 绑定标签,并在新增设备码表单中复用同一字段规范;修复后复查设备查询和新增弹窗的无障碍属性。