hl-api-changelog/changelogs/2026-04/2026-04-18_e2e-frontend-bugs-report.md

4.4 KiB

【前端 BUG 反馈】产品线 + 版本创建流程 E2E 测试

  • 日期: 2026-04-18
  • 类型: BUG 反馈(前端)
  • 来源: 定制师角色 E2E 自动化测试 D:/work2/HL/test/e2e_run.py + 后续 5 步版本表单探索
  • 测试环境: https://192.168.100.160:9527
  • 后端无改动

背景

Claude 以定制师角色在测试后台完整走了:登录 → 切角色 → 新建两条产品线(核心/私人定制)→ 在核心产品线下完整提交审核 1 个版本 → 在私人定制线下创建版本但被 BUG-3 阻塞停留草稿。

后端接口全部正常,核心版本最终提交成功(产品编号 C260418003,状态"待审核")。以下 3 个 BUG 均为前端 UI/交互问题,请前端同事评估修复。


🔴 BUG-3 [P0]Step 2 行程编排 — 切换天数重置已填字段

现象

在 DAY N 填完 集合地/解散地/酒店/活动/封面图/照片集 后,点左侧 DAY N+1 切走,再切回 DAY N,部分字段被清空

  • 核心产品CORE:解散地、封面图 丢失
  • 小蒙马GROUP:解散地、封面图、活动、酒店 全丢

重现步骤

  1. 进入"新增版本" → 走到 Step 2 行程编排
  2. DAY 1 填完 7 个字段(标题 / 集合地 / 解散地 / 描述 / 酒店 / 活动 / 照片集)
  3. 点左侧 "DAY 2" 标签
  4. DAY 2 也填完
  5. 点回 "DAY 1"
  6. 观察DAY 1 的解散地变成"搜索解散地"占位符,封面图变成"请选择封面图"

影响

用户常见操作模式"逐天填 + 最后回头核查"完全不可用。必须严格按"倒序填 DAY 3 → DAY 2 → DAY 1 且不回切"这种反直觉顺序,否则无法通过 Step 2 校验。

可能原因(猜测)

  • Vue 组件 v-if 而非 v-show 导致切走后子组件销毁
  • DAY 切换时没 emit 保存而是直接替换 model
  • Selection 组件(解散地、封面图选择器)的 v-model 可能绑在了 ref 而非持久化 store

期望

切换 DAY 保留所有已填字段,不需要手动保存。

严重度

P0——直接阻塞定制师创建行程的常规操作。

证据截图(测试机)

D:/work2/HL/test/shots/custom-day1-refilled.png — 补填 DAY 1 后仍显示"请至少添加1项活动/1家酒店"


🟡 BUG-4 [P1]Step 4 价格区间 — 金额输入框未清空默认值导致拼接

现象

点击"成人价" n-input-number 后 type "1280",最终保存显示 ¥2,401,280(预期 ¥1,280。儿童价 type "880" 保存显示 ¥240,880。

重现步骤

  1. Step 4 定价管理 → 添加区间 → 选日期范围 → 点"确认"
  2. 点击"成人价"输入框
  3. 直接键盘输入 "1280"(不做任何清空)
  4. 点"确认添加"
  5. 观察列表显示 "¥2,401,280"

可能原因

  • n-input-number 打开时 input 里已有默认值(例如来自 product_line.default_adult_price 或产品类型默认值 "240"),点击不会自动全选
  • 用户的 type 被当作在光标位置插入

期望

  • 点击输入框时自动全选当前值focus → select all
  • 或:初始默认为空,用户主动输入

严重度

P1——非程序崩溃,但用户若不注意会严重错填价格造成业务风险("240" + 用户打 "1280" → 超过 200 万的团费)。

证据截图

D:/work2/HL/test/shots/core-step4-section-added.png


🟢 BUG-1 [P3]:产品线卡片封面图缺失

现象

新建产品线(主题)的表单只有 名称 / 主题类型 / 描述 三个字段,没有封面图上传入口;列表卡片也没有任何封面图区域,仅文字展示。

期望

至少给默认占位图;或在新增/编辑表单增加封面图上传字段。

严重度

P3不影响功能,UI 信息展示不完整)

证据截图

D:/work2/HL/test/shots/14-theme-list-final.png


可选:自动化测试脚本

存放位置:D:/work2/HL/test/。前端同事若需要快速复现 BUG-3/BUG-4,可参考 fill_day.py(按天填 7 字段)和 fill_step4_v2.py(价格区间)。脚本基于 CDP 接管 Chrome 9222 调试端口。


后端说明

  • 所有后端接口(/admin/product/line/*, /admin/product/edit, 等)在 E2E 过程中工作正常
  • 核心产品版本最终通过所有后端校验成功提交审核
  • BUG-3/BUG-4/BUG-1 均为前端展示/交互层问题,后端无需改动

以上问题请前端团队酌情排期,优先级顺序BUG-3 > BUG-4 > BUG-1。