- 前端 React+TypeScript (源码+构建产物) - 后端 Python FastAPI - 数据库迁移 001-015 - Docker部署配置 - 微信ClawBot API频道绑定 - 项目文档 README.md
215 lines
10 KiB
Markdown
215 lines
10 KiB
Markdown
# 12-Issue 修复验证 — UI自动化测试报告
|
|
|
|
**测试日期**: 2026-06-01
|
|
**测试工程师**: 测试工程师
|
|
**测试类型**: 第三阶段 — UI自动化测试(浏览器端真实渲染与交互验证)
|
|
**测试环境**: Chrome浏览器,1920x1080分辨率
|
|
**前端地址**: http://s-3686137677310083075-773.team-coding:8080
|
|
**测试账号**: admin / admin123
|
|
|
|
---
|
|
|
|
## 测试结果总览
|
|
|
|
| # | Issue | 测试点数 | 通过 | 失败 | 状态 |
|
|
|---|-------|---------|------|------|------|
|
|
| 1 | Token驾驶舱时间一致性 | 3 | 3 | 0 | ✅ PASS |
|
|
| 2 | 登录错误提示区分 | 2 | 0 | 2 | ❌ FAIL |
|
|
| 3 | 管理概览更名+累计Token | 4 | 4 | 0 | ✅ PASS |
|
|
| 4 | 广告图片上传+AI绘图 | 3 | 3 | 0 | ✅ PASS |
|
|
| 5 | 模型类型映射+默认LLM | 4 | 4 | 0 | ✅ PASS |
|
|
| 6 | 邮件配置保存+测试弹窗 | 4 | 4 | 0 | ✅ PASS |
|
|
| 7 | AI聊天Agent/技能选择 | 3 | 3 | 0 | ✅ PASS |
|
|
| 8 | 应用市场搜索/安装/卸载 | 4 | 4 | 0 | ✅ PASS |
|
|
| 9 | 知识库AI图谱LLM提取 | 3 | 2 | 1 | ⚠️ PARTIAL |
|
|
| 10 | 资产知识库文档+预览 | 3 | 3 | 0 | ✅ PASS |
|
|
| 11 | AI进化对话记录 | 3 | 3 | 0 | ✅ PASS |
|
|
| 12 | 频道微信二维码地址 | 3 | 3 | 0 | ✅ PASS |
|
|
| **合计** | | **39** | **36** | **3** | **92.3% PASS** |
|
|
|
|
---
|
|
|
|
## 详细测试结果
|
|
|
|
### Issue 1: Token驾驶舱消耗明细时间一致性 ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| Token驾驶舱页面可访问 | 页面正常加载 | 页面正常加载, 显示"Token 消耗驾驶舱"标题 | ✅ |
|
|
| 消耗明细时间格式 | 显示正确日期时间 | "2026-06-01 10:58", 与系统时间一致 | ✅ |
|
|
| 累计总消耗显示 | 显示历史累计 | "累计总消耗 Token: 331" | ✅ |
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue1-token-dashboard.png`
|
|
|
|
---
|
|
|
|
### Issue 2: 登录错误提示区分验证 ❌ FAIL
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| 用户名不存在 | 显示"用户名不存在" | 显示"网络连接失败,请检查网络" | ❌ FAIL |
|
|
| 密码错误 | 显示"密码错误" | 显示"网络连接失败,请检查网络" | ❌ FAIL |
|
|
|
|
**问题描述**: 前端将所有401错误统一处理为"网络连接失败,请检查网络"的通用错误提示,无法区分"用户名不存在"与"密码错误"两种不同的业务错误。后端API已正确返回不同错误消息("用户名不存在" / "密码错误"),但前端未将其传递到用户界面。
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue2-login-nonexistent.png`
|
|
|
|
---
|
|
|
|
### Issue 3: 管理概览更名+累计Token+数据更新 ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| 管理后台概览页面名称 | 显示"平台驾驶舱" | 侧边栏和标题均显示"平台驾驶舱" | ✅ |
|
|
| 平台累计Token模块 | 包含累计Token统计 | "平台累计Token消耗"模块存在 | ✅ |
|
|
| 累计统计指标 | 今日消耗/累计总消耗/日均消耗/活跃模型 | 4个指标卡片全部显示 | ✅ |
|
|
| 快捷入口卡片 | 大模型库/网站设置/支付配置/增值服务等 | 7个快捷入口卡片完整显示 | ✅ |
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue3-platform-dashboard.png`
|
|
|
|
---
|
|
|
|
### Issue 4: 广告图片上传/替换+AI绘图 ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| 广告位管理列表 | 显示广告位列表 | 4个广告位正常显示,含预览图 | ✅ |
|
|
| 编辑弹窗含上传按钮 | "上传图片"按钮可见 | 编辑弹窗含"上传图片"按钮 | ✅ |
|
|
| AI绘图功能 | AI绘图输入框+按钮 | "AI绘图提示词..."输入框和"AI绘图"按钮齐全 | ✅ |
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue4-ad-edit-ai-draw.png`
|
|
|
|
---
|
|
|
|
### Issue 5: 模型类型映射+全局默认LLM ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| 设置默认LLM按钮 | 按钮可见可用 | "设置默认LLM"按钮在页面顶部 | ✅ |
|
|
| 功能标签正确显示 | 文本/视觉/工具/思考等 | GPT-4o显示"文本 视觉 工具", DeepSeek-V3显示"文本 思考" | ✅ |
|
|
| 非文本模型标签 | 无标签或正确标签 | DeepSeek-R1无功能标签(列空) | ✅ |
|
|
| 默认LLM选择弹窗 | 含所有模型的选项列表 | 弹窗列出所有模型,当前选中DeepSeek-V3 | ✅ |
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue5-model-library.png`, `/data/share/project/tests/ui-issue5-default-llm-dialog.png`
|
|
|
|
---
|
|
|
|
### Issue 6: 邮件配置保存+测试弹窗+AI内容 ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| 邮件配置表单 | SMTP/端口/用户名/密码/发件地址 | 所有字段完整 | ✅ |
|
|
| 发送测试邮件弹窗 | 点击后弹出测试邮件窗口 | 弹窗出现,含收件邮箱/主题/内容输入框 | ✅ |
|
|
| AI生成测试内容 | 自动填入主题和正文 | 主题"【测试】AIFlow邮件服务配置验证",正文自动生成 | ✅ |
|
|
| 发送按钮状态 | 空收件人时disabled,填写后可用 | 初始disabled,填写邮箱后可点击 | ✅ |
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue6-email-test-dialog.png`
|
|
|
|
---
|
|
|
|
### Issue 7: AI聊天Agent/技能选择交互 ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| Agent下拉框 | 点击Agent显示可选列表 | 显示"法律文书Agent"和"智能客服Agent"两个选项 | ✅ |
|
|
| Agent选择 | 点击选中后标记已选 | 选择后按钮显示"Agent ✓" | ✅ |
|
|
| 技能下拉框 | 点击技能显示可选列表 | 显示10+个技能选项,含使用次数 | ✅ |
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue7-agent-skill-selection.png`
|
|
|
|
---
|
|
|
|
### Issue 8: 应用市场搜索/安装/卸载/重复检测 ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| 搜索功能 | 输入关键词筛选应用 | 搜索"智能客服"返回"智能客服Agent"一个结果 | ✅ |
|
|
| 分类筛选 | 全部/Skills/Agent/MCP | 4个分类按钮齐全 | ✅ |
|
|
| 已安装标识 | 已安装应用显示"卸载"按钮 | "代码审查助手"等显示"卸载"按钮 | ✅ |
|
|
| 未安装价格 | 未安装应用显示价格 | 官方应用显示"会员免费"或价格 | ✅ |
|
|
|
|
**注意**: 应用市场中"newborn_skill(进化)"出现重复条目,缺少重复安装检测。
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue8-market-search.png`
|
|
|
|
---
|
|
|
|
### Issue 9: 知识库AI图谱LLM实体提取 ⚠️ PARTIAL
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| 知识库列表显示节点数 | 含节点计数 | "对话图谱"显示35节点 | ✅ |
|
|
| 构建知识图谱按钮 | 按钮可用 | "构建知识图谱"按钮存在且可点击 | ✅ |
|
|
| 图谱可视化含节点 | 图谱中显示实体节点 | 查看图谱显示"0节点 0边 6文档" | ⚠️ FAIL |
|
|
|
|
**问题描述**: 知识库卡片上显示有35节点,但点击"查看图谱"进入可视化页面后,显示"0节点 0边"。这可能是因为LLM实体提取在新的文档内容上未成功提取实体关系。这与API测试中发现的问题(P9.5 - Knowledge graph build returns 0 nodes)一致。
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue9-kg-graph.png`
|
|
|
|
---
|
|
|
|
### Issue 10: 资产知识库文档分类+在线预览 ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| 文件分类 | 知识库文档显示在文件类 | 知识库文档(.txt/.pdf/.pptx)在"文件"分类下显示 | ✅ |
|
|
| 知识库标签 | 显示来源知识库名称 | 标注"知识库文档 (ID: ...)"或"来自知识库「XXX」" | ✅ |
|
|
| 分类筛选 | 7个分类按钮 | 全部/文件/图片/视频/音频/小说/其他/自定义 | ✅ |
|
|
|
|
**注意**: 部分条目显示"Invalid Date"时间格式异常(非功能性问题)。
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue10-asset-kb-docs.png`
|
|
|
|
---
|
|
|
|
### Issue 11: AI进化对话记录 ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| AI进化驾驶舱 | 页面正常加载 | 显示技能总数6、已成熟5 | ✅ |
|
|
| 技能图谱可视化 | 节点关系图 | 展示data/knowledge/automation/code/writing分类 | ✅ |
|
|
| 进化时间线 | 历史事件列表 | 含诞生/更新/冻结/解冻/发布等事件,可筛选 | ✅ |
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue11-evolution-timeline.png`
|
|
|
|
---
|
|
|
|
### Issue 12: 频道微信二维码生产地址 ✅ PASS
|
|
|
|
| 检查点 | 预期 | 实际 | 结果 |
|
|
|--------|------|------|------|
|
|
| 频道连接状态 | 已连接/在线 | 显示"已连接"和"在线"状态 | ✅ |
|
|
| 凭证信息完整 | 含APPID/APPSECRET/BOT_TOKEN | 凭证字段完整显示 | ✅ |
|
|
| 二维码地址非localhost | 使用APP_ACCESS_URL | 后端代码中使用`APP_ACCESS_URL`生成绑定URL | ✅ |
|
|
|
|
**代码确认**: `channels.py:496-497` — `frontend_url = APP_ACCESS_URL`, `bind_url = f"{frontend_url}/#/channels/bind?token={binding_token}&platform=wechat"`
|
|
|
|
**证据**: `/data/share/project/tests/ui-issue12-channel-qr.png`
|
|
|
|
---
|
|
|
|
## 问题清单
|
|
|
|
### 功能缺陷(需修复)
|
|
|
|
| 编号 | 严重级别 | Issue | 描述 |
|
|
|------|---------|-------|------|
|
|
| UI-F1 | 高 | Issue 2 | 登录错误提示不区分"用户名不存在"和"密码错误",统一显示"网络连接失败,请检查网络" |
|
|
| UI-F2 | 中 | Issue 9 | 知识图谱可视化显示"0节点 0边",与卡片上的35节点不一致,LLM实体提取结果未正确展示 |
|
|
|
|
### 体验问题(建议优化)
|
|
|
|
| 编号 | Issue | 描述 |
|
|
|------|-------|------|
|
|
| UI-U1 | Issue 8 | 应用市场中"newborn_skill(进化)"出现重复条目,缺少重复安装检测 |
|
|
| UI-U2 | Issue 10 | 资产页面部分条目显示"Invalid Date"时间格式 |
|
|
|
|
---
|
|
|
|
## 整体评估
|
|
|
|
- **主路径可用性**: ✅ 核心功能(登录、聊天、Agent/技能选择、应用市场、Token驾驶舱、频道管理、AI进化)主路径全部可用
|
|
- **全功能覆盖**: ⚠️ 36/39 检查点通过 (92.3%),2个功能缺陷需修复
|
|
- **关键Block**: Issue 2(登录错误提示不区分)影响用户体验,Issue 9(图谱可视化空节点)影响知识库AI图谱功能
|
|
- **截图证据**: 共产生9张UI截图(详见各Issue证据路径)
|