测试方案 — 2026-04-17-23-12-52
测试目标
验证时间字段格式选项补全、报告编辑器 "24h" 脏数据显示修复、以及字段管理编辑面板点击失效问题的修复。
测试环境
- 本地开发服务器:
npm run dev(端口 3000)
- 浏览器:Chrome/Edge
- 测试账号:admin / 123456(超级管理员)
测试用例
TC-1:默认时间格式修正
| 步骤 |
操作 |
预期结果 |
| 1 |
清除 localStorage 中 formFieldsConfig,重新登录 |
系统加载默认字段配置 |
| 2 |
进入「模板管理」→「字段管理」 |
字段列表正常显示 |
| 3 |
点击「手术开始时间」进入编辑模式 |
timeFormat 输入框显示为 HH:mm,而非 24h |
| 4 |
点击「手术终止时间」进入编辑模式 |
同上,显示 HH:mm |
TC-2:报告编辑器 "24h" 脏数据兼容
| 步骤 |
操作 |
预期结果 |
| 1 |
进入「报告编辑器」新建报告 |
加载默认模板 |
| 2 |
在基本信息中填写手术开始时间为 09:30 |
编辑器中「手术开始时间」smart field 显示 09:30,而非 24h |
| 3 |
填写手术终止时间为 14:00 |
编辑器中「手术终止时间」smart field 显示 14:00,而非 24h |
| 4 |
(进阶)手动将 formFieldsConfig 中某 time 字段的 timeFormat 改回 '24h',刷新后再新建报告 |
该时间字段仍能正常显示时间值(通过兼容兜底) |
TC-3:格式选项按类型过滤
| 步骤 |
操作 |
预期结果 |
| 1 |
进入「模板管理」→「字段管理」 |
— |
| 2 |
点击「手术日期」(date 类型)进入编辑模式,聚焦格式输入框 |
datalist 下拉中只出现日期格式(如 YYYY-MM-DD、YYYY年MM月DD日、MM-DD、MM月DD日),不出现 HH:mm、hh:mm A |
| 3 |
点击「手术开始时间」(time 类型)进入编辑模式,聚焦格式输入框 |
datalist 下拉中只出现时间格式(如 HH:mm、hh:mm A),不出现 YYYY-MM-DD 等日期格式 |
| 4 |
新增字段 → category 选「时间」→ type 选「日期」→ 聚焦格式输入框 |
同上,只显示日期格式 |
| 5 |
type 切换为「时分」→ 聚焦格式输入框 |
只显示时间格式 |
TC-4:旧脏数据清理
| 步骤 |
操作 |
预期结果 |
| 1 |
在浏览器 DevTools → Application → Local Storage 中,手动将 customTimeFormats 设为 ["YYYY-MM-DD", "24h", "12h", "HH:mm"] |
— |
| 2 |
刷新页面,进入「模板管理」 |
— |
| 3 |
聚焦任意时间字段的格式输入框 |
datalist 中不出现 24h 和 12h,只出现 YYYY-MM-DD、YYYY年MM月DD日、HH:mm、hh:mm A 等有效格式 |
TC-5:字段编辑面板点击与滚动
| 步骤 |
操作 |
预期结果 |
| 1 |
进入「模板管理」→「字段管理」 |
— |
| 2 |
将页面滚动到底部,使最后一个字段(如「撰写时间」)刚好位于可视区域底部边缘 |
— |
| 3 |
点击该字段卡片进入编辑模式 |
编辑面板展开后,卡片自动平滑滚动到可视区域内,所有输入框和下拉框均可正常点击获取焦点,无需手动滚动 |
| 4 |
重复测试中间位置的字段 |
展开后同样能正常点击所有控件 |
TC-6:类型检查
| 步骤 |
操作 |
预期结果 |
| 1 |
在项目根目录执行 npm run lint |
tsc --noEmit 通过,0 errors |
验收标准
测试方式
全部使用手工功能验证(项目无单元测试框架)。