Files
abc-lee-ComfyUI-InpaintRegi…/docs/TEST-CHECKLIST.md
T
InpaintRegionEditor Dev 23c748bcf0 feat: 自定义图像渲染 + 选区框绘制 + 拖动功能
主要更改:
- 重写前端 extension.js,完全自己控制图像渲染
- 去掉 nodes.py 的 image_upload,避免双图像问题
- 实现选区框绘制(橙色)+ 遮罩区域显示(红色)
- 实现选区框拖动功能
- 修复 onMouseDown 参数格式: (e, pos, canvas)
- 更新文档和开发日志
2026-03-02 22:31:54 +08:00

186 lines
5.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# InpaintRegionEditor 测试清单
> 版本:1.0 | 日期:2026-03-02
---
## 一、后端测试
### 1.1 蒙版提取测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| 上传带 Alpha 的 PNG | 正确提取 MASK | ⬜ 待测试 |
| 上传不带 Alpha 的 PNG | 抛出 ValueError | ⬜ 待测试 |
| Alpha = 0(全透明) | MASK = 1.0(全遮罩) | ⬜ 待测试 |
| Alpha = 255(全不透明) | MASK = 0.0(无遮罩) | ⬜ 待测试 |
### 1.2 选区计算测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| padding = 64 | 选区 = 遮罩边界 + 64px | ⬜ 待测试 |
| padding = 0 | 选区 = 遮罩边界 | ⬜ 待测试 |
| 选区超出图像边界 | 自动裁剪到边界内 | ⬜ 待测试 |
| 用户拖动选区 | 使用前端坐标 | ⬜ 待测试 |
### 1.3 输出测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| IMAGE 输出 | RGB tensor [1, H, W, 3] | ⬜ 待测试 |
| MASK 输出 | Float tensor [1, H, W] | ⬜ 待测试 |
| region_top/left/width/height | 正确的 INT 值 | ⬜ 待测试 |
---
## 二、前端测试
### 2.1 节点创建测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| 添加节点到画布 | 节点显示正确 | ⬜ 待测试 |
| 图像选择 widget | 下拉列表显示文件 | ⬜ 待测试 |
| padding widget | 默认值 64,范围 0-512 | ⬜ 待测试 |
| 选区框 Canvas | 显示遮罩 + 选区框 | ⬜ 待测试 |
### 2.2 选区框交互测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| 遮罩显示 | 半透明红色区域 | ⬜ 待测试 |
| 选区框显示 | 橙色虚线边框 | ⬜ 待测试 |
| 拖动选区框 | 坐标实时更新 | ⬜ 待测试 |
| 尺寸标签 | 显示 W×H | ⬜ 待测试 |
| 拖动后同步 widget | region_coords 更新 | ⬜ 待测试 |
### 2.3 右键菜单测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| 右键节点 | 显示"打开 Photopea 编辑"选项 | ⬜ 待测试 |
| 未选择图像时点击 | alert("请先选择一张图像") | ⬜ 待测试 |
| 选择图像后点击 | 打开 Photopea 模态框 | ⬜ 待测试 |
---
## 三、Photopea 集成测试
### 3.1 模态框测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| 模态框显示 | 全屏黑色背景 | ⬜ 待测试 |
| Photopea iframe 加载 | 显示 Photopea 界面 | ⬜ 待测试 |
| 状态栏显示 | "正在加载图像..." | ⬜ 待测试 |
| 取消按钮 | 关闭模态框 | ⬜ 待测试 |
### 3.2 图像加载测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| 图像加载到 Photopea | 显示在画布中 | ⬜ 待测试 |
| 加载 RGB(无 Alpha) | 纯 RGB 图像 | ⬜ 待测试 |
| 加载失败处理 | 状态栏显示错误 | ⬜ 待测试 |
### 3.3 图像保存测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| 保存按钮点击 | "正在导出图像..." | ⬜ 待测试 |
| 图像导出 | PNG 格式 | ⬜ 待测试 |
| 上传到 ComfyUI | 文件保存到 input 目录 | ⬜ 待测试 |
| 节点 widget 更新 | image widget 显示新文件名 | ⬜ 待测试 |
| 保存失败处理 | 状态栏显示错误 | ⬜ 待测试 |
---
## 四、集成工作流测试
### 4.1 完整流程测试
```
步骤 1: 上传带 Alpha 的 PNG
步骤 2: 验证节点显示遮罩 + 选区框
步骤 3: 调整 padding 值
步骤 4: 拖动选区框位置
步骤 5: 右键 → 打开 Photopea 编辑
步骤 6: 在 Photopea 中编辑图像
步骤 7: 保存返回节点
步骤 8: 执行工作流
步骤 9: 验证输出
```
| 步骤 | 预期结果 | 状态 |
|------|---------|------|
| 1 | 文件出现在下拉列表 | ⬜ 待测试 |
| 2 | Canvas 显示遮罩和选区 | ⬜ 待测试 |
| 3 | 选区自动重算 | ⬜ 待测试 |
| 4 | region_coords 更新 | ⬜ 待测试 |
| 5 | Photopea 模态框打开 | ⬜ 待测试 |
| 6 | 可以编辑图像 | ⬜ 待测试 |
| 7 | 新图像更新到节点 | ⬜ 待测试 |
| 8 | 工作流执行成功 | ⬜ 待测试 |
| 9 | IMAGE/MASK/region_* 输出正确 | ⬜ 待测试 |
---
## 五、错误处理测试
### 5.1 后端错误
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| 无蒙版图像执行 | ValueError + 友好提示 | ⬜ 待测试 |
| 选区小于遮罩 | ValueError + 尺寸提示 | ⬜ 待测试 |
| 图像文件不存在 | 错误处理 | ⬜ 待测试 |
### 5.2 前端错误
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| Photopea 加载超时 | 超时错误提示 | ⬜ 待测试 |
| 图像上传失败 | 错误提示 | ⬜ 待测试 |
| 网络断开 | 错误处理 | ⬜ 待测试 |
---
## 六、性能测试
| 测试项 | 预期结果 | 状态 |
|--------|---------|------|
| 1024×1024 图像加载 | < 2 秒 | ⬜ 待测试 |
| 选区框拖动流畅度 | 60fps | ⬜ 待测试 |
| Photopea 首次加载 | < 10 秒 | ⬜ 待测试 |
| Photopea 缓存后加载 | < 3 秒 | ⬜ 待测试 |
---
## 七、浏览器兼容性测试
| 浏览器 | 状态 |
|--------|------|
| Chrome (最新版) | ⬜ 待测试 |
| Firefox (最新版) | ⬜ 待测试 |
| Edge (最新版) | ⬜ 待测试 |
| Safari (macOS) | ⬜ 待测试 |
---
## 八、测试结果汇总
| 类别 | 通过 | 失败 | 待测试 |
|------|------|------|--------|
| 后端测试 | 0 | 0 | 14 |
| 前端测试 | 0 | 0 | 16 |
| Photopea 集成 | 0 | 0 | 11 |
| 集成工作流 | 0 | 0 | 9 |
| 错误处理 | 0 | 0 | 6 |
| 性能测试 | 0 | 0 | 4 |
| 浏览器兼容 | 0 | 0 | 4 |
---
*文档创建时间:2026-03-02*