- handleAIGenerate中获取currentHtml前增加溢出段落合并逻辑 - 遍历.ai-content之后的兄弟<p>节点,移回.ai-content内 - 合并后同步更新contentRef和saveDraftToStorage - 确保diff弹窗左侧能显示AI可编辑区域内的全部段落
46 lines
1.4 KiB
Markdown
46 lines
1.4 KiB
Markdown
# 测试方案
|
||
|
||
## 测试环境
|
||
- 浏览器访问 `http://localhost:4173/`
|
||
- 进入「图文报告生成」→ 新建报告
|
||
|
||
## 测试用例 1:溢出段落自动合并
|
||
|
||
**前置条件**:
|
||
手动构造一个 DOM 结构被「破坏」的 AI 区域(模拟用户回车导致段落溢出):
|
||
1. 插入 AI 可编辑区域「手术步骤」
|
||
2. 在区域内输入第 2 段内容
|
||
3. 在区域末尾按回车,输入第 3、4、5 段(观察 DOM,确认 `<p>` 标签变成了 `.ai-content` 的兄弟节点)
|
||
|
||
**步骤**:
|
||
1. 勾选「允许修改正文」→ 选中「手术步骤」区域
|
||
2. 发送「请完善手术步骤描述」
|
||
|
||
**预期结果**:
|
||
- diff 弹窗左侧「原始版本」应显示全部 2-5 段内容,而不只是第 2 段
|
||
- diff 弹窗右侧「AI 提议版本」也显示完整的多段落内容
|
||
- 确认注入后,编辑器中 AI 区域的全部内容被替换,没有重复段落
|
||
|
||
## 测试用例 2:正常结构不受影响
|
||
|
||
**前置条件**:
|
||
AI 可编辑区域内的所有段落都在 `.ai-content` 内部(正常结构)。
|
||
|
||
**步骤**:
|
||
1. 发送修改指令
|
||
|
||
**预期结果**:
|
||
- diff 弹窗左侧正常显示所有段落
|
||
- 合并逻辑不会误删或误移任何内容
|
||
|
||
## 测试用例 3:编译与部署
|
||
|
||
**步骤**:
|
||
1. 执行 `npm run build`
|
||
2. 确认无 TypeScript 编译错误
|
||
3. 预览服务正常启动并返回 200
|
||
|
||
**预期结果**:
|
||
- `vite build` 成功完成
|
||
- 预览页面可正常访问
|