Files
Mdeical_Sur_Report/工程分析/测试方案-2026-04-17-09-36-07.md
admin 38ff67a6a8 fix: smart field spacing/line-break in TemplateManage and default template
- Compress insertSmartField HTML to single-line, remove trailing  
- Compress smartField helper in defaultContent.ts to single-line
- Add white-space: nowrap to .smart-field-wrapper (CSS + inline)
- Add keydown interceptor in TemplateManage to prevent Backspace/Delete
  from removing whole <p> when adjacent to smart-field-wrapper
- Update experience record (#14)
2026-04-17 09:47:21 +08:00

3.4 KiB
Raw Blame History

测试方案 — 2026-04-17-09-36-07

测试目标

验证 TemplateManage 中插入智能字段后的空格消除、Backspace 删除保护、异常换行修复,以及默认模板预置字段控件的正确性。

测试环境

  • 浏览器Chrome / Edge
  • 前置条件:已登录系统(建议使用 admin 超级管理员账号)
  • 测试页面:/template-manage

测试用例设计

用例 1插入字段后无多余空格

步骤 操作 预期结果
1.1 进入 /template-manage 默认模板加载,第一行已预置姓名/性别/年龄等智能字段方格
1.2 将光标定位到编辑器任意位置,点击字段库中的「手术名称」按钮 编辑器中插入一个蓝色边框的方格,方格与后方文字之间没有明显的大片空白
1.3 右键检查插入元素的 DOM HTML 中没有 &nbsp;smart-field-wrapper 与前后文本节点紧密相连

用例 2行尾插入字段不异常换行

步骤 操作 预期结果
2.1 在第一行"住院号:"的方格后点击,使光标位于行尾
2.2 点击字段库插入「手术日期」 新插入的方格紧跟在住院号方格后面,不会跳到下一行(只要一行空间足够)

用例 3Backspace 删除字段不误删整行

步骤 操作 预期结果
3.1 在编辑器中插入一个「手术名称」字段 方格正常插入
3.2 将光标定位到该方格的紧右侧(点击方格后方的文字前) 光标闪烁在方格之后
3.3 按下键盘 Backspace 仅删除该「手术名称」方格,方格前方的文字(如"手术名称:")和整行 <p> 完好保留
3.4 再次按 Backspace 正常删除方格前方的文字字符(如冒号或文字),不会删行

用例 4Delete 键同样受保护

步骤 操作 预期结果
4.1 将光标定位到「手术名称」方格的紧左侧(点击方格前方的文字后) 光标闪烁在方格之前
4.2 按下键盘 Delete 仅删除该「手术名称」方格,整行内容保留

用例 5默认模板预置字段验证

步骤 操作 预期结果
5.1 进入 /template-manage,观察默认模板第一行 姓名、性别、年龄、科别、床号、住院号后面直接就是可填写的蓝色边框方格,没有红色 *姓名* 纯文本占位符
5.2 新建一个模板 新模板内容中也包含第一行的预置智能字段

用例 6类型检查

步骤 操作 预期结果
6.1 在项目根目录执行 npm run lint 无 TypeScript 编译错误

验收标准

  • 插入字段后,方格与前后文字之间没有多余空格。
  • 行尾插入字段时,空间足够则不会异常跳到下一行。
  • 按 Backspace/Delete 删除字段时,仅删除该字段节点,不会误删整行。
  • 默认模板第一行已预置姓名、性别、年龄等智能字段方格。
  • npm run lint 通过。

测试方式

手工浏览器验证,结合 DevTools 观察 DOM 结构和键盘事件响应。


⚠️ 请审核以上测试方案,确认无误后回复「确认」或提出修改意见,我将进入最终执行阶段。