facc04aa65
本提交为 .git 对象库损坏后的重建提交,内容等价于原先三个本地提交 (5e2fd4c2 / 57a53c98 / 5d7e1873)的累积结果,未做任何额外改动。 一、docs 结构整改(整改 #14) 根因:重构时新结构为 untracked 文件,执行 git stash(未带 -u)未纳入, 随后 git reset 拉回 HEAD 旧 tracked 树,导致旧树复活、新旧两棵目录 树并存于 docs/,共 791 文件、双分类体系冲突。 修复动作: - b2 同名异主题文件改名迁移保全 9 个 - C 类 39 个孤立文件按主题正确归类 - A/B1 类 222 个重复文件删除(新结构已有内容副本) - 9 个旧独有空目录删除 - 270 处内部引用按 verified 映射改写 - 整改记录 #14 登记于 04-运维文档/部署运维 结果:docs 791 → 569 文件,顶层仅规范 8 类 + 治理文件,单树恢复。 残留:约 20 处指向从未存在文件的陈旧死链,归入独立文档卫生任务。 二、compose 双目录对齐(消除踩坑 A) - docker-compose.yml:nginx 前端挂载全部由根目录 frontend-*/dist 改为 src/frontend-*/dist(h5 / agent / admin / terminal) - docker-compose.dev.yml:dev 服务 build context 与卷同步改 src/ - 效果:本地 docker compose up 不再把根目录 stale dist 挂回, 与线上一致,分叉隐患消除(已 docker compose config 校验通过) 防复发铁律: - 重构须提交;仓库修复须 git stash -u 或先 commit - 新结构须 git add 并提交,避免再次 untracked 复活 - H5 改动只动 src/frontend-h5/,禁改根目录遗留 frontend-*/
204 lines
11 KiB
Markdown
204 lines
11 KiB
Markdown
# 测试质量文档分类索引
|
||
|
||
> **版本**: v2.0 | **生效日期**: 2026-08-05 | **维护人**: Duckula
|
||
>
|
||
> 本目录包含 IT 智能服务台项目的所有测试相关文档。按类型分类,便于查阅和维护。
|
||
>
|
||
> **历史版本**:v1.0(2026-07-14)已归档为 `README.v1.archive.md`
|
||
|
||
---
|
||
|
||
## 📁 文档分类结构
|
||
|
||
```
|
||
docs/03-测试文档/
|
||
├── 00-测试规范/ # 测试方法论、流程、规范
|
||
│ ├── 测试方法论指南.md # v1.0(2026-07-14)
|
||
│ └── 测试套件全景.md # v1.0(2026-08-05 新建)⭐
|
||
│
|
||
├── 01-综合报告/ # 合并汇总类报告
|
||
│ └── QA_COMPREHENSIVE_REPORT.md
|
||
│
|
||
├── 02-E2E测试/ # 端到端测试
|
||
│ ├── E2E-CHECKLIST-v0.7.0.md # v0.7.0 验收清单(扫码登录+MFA)
|
||
│ ├── 方案A-消息发送延时-E2E验证报告-20260708.md
|
||
│ └── e2e-screenshots/ # 截图证据
|
||
│
|
||
├── 03-功能测试用例/ # 按需求/功能分类
|
||
│ ├── TC-REQ-认证-统一认证与登录-v1.0.md
|
||
│ ├── TC-REQ-通用-005-选项选择持久化-v1.0.md
|
||
│ ├── TC-REQ-AI-004-AI回复来源标识.md
|
||
│ ├── TC-REQ-用户-007-自助诊断面板优化.md
|
||
│ ├── TC-通用-004-敏感词检测.md # 含 §10 鉴权章节(BUG-通用-004)
|
||
│ ├── TC-通用-002-快速回复规则后台管理.md
|
||
│ ├── TC-坐席-007-分诊排查系统.md
|
||
│ ├── TC-用户-006-智能推荐重构.md
|
||
│ ├── TC-用户-005-头像菜单退出.md
|
||
│ ├── TC-用户-008-H5结束会话失败回归-v1.0.md
|
||
│ ├── TC-集成-002-分配模式Tab收编.md
|
||
│ ├── TESTING_CALL_AGENT.md
|
||
│ ├── 测试/Token多IP异常检测测试用例.md
|
||
│ └── 会话存档功能-测试用例.md
|
||
│
|
||
├── 04-版本测试报告/ # 按日期/版本分类
|
||
│ ├── Tier0-测试报告-20260708.md
|
||
│ ├── Tier1-测试报告-20260708.md
|
||
│ ├── P0串联+P2可视化-测试报告-20260708.md
|
||
│ ├── OTP绑定-测试报告-20260708.md
|
||
│ ├── RBAC-BugFix-测试报告-20260707.md
|
||
│ ├── 看板验真-测试报告-20260707.md
|
||
│ └── 知识迭代Bug修复报告-20260711.md
|
||
│
|
||
├── 05-缺陷单/ # P0/P1/P2 缺陷归档
|
||
│ ├── README.md # 缺陷单索引
|
||
│ ├── BUG-通用-004-敏感词API无鉴权-001.md # 本次修复
|
||
│ ├── BUG-通用-快速回复规则-路由目标筛选500-002.md
|
||
│ ├── BUG-通用-用户角色分配表格看不清-001.md
|
||
│ ├── BUG-AI-打印机安装路由错误-001.md
|
||
│ ├── BUG-坐席-002-选项汇总标签缺失-001.md
|
||
│ ├── BUG-坐席-图片预览刷新-001.md
|
||
│ ├── BUG-用户-H5请求超时-002.md
|
||
│ ├── BUG-用户-H5结束会话失败-003.md
|
||
│ └── BUG-用户-坐席离线未限制呼叫人工-001.md
|
||
│
|
||
├── README.md # 本文件(v2.0)
|
||
└── README.v1.archive.md # 旧版归档
|
||
```
|
||
|
||
---
|
||
|
||
## 📋 测试统计汇总(v2.0 / 2026-08-05)
|
||
|
||
| 指标 | 数值 | 说明 |
|
||
|------|------|------|
|
||
| **测试文档总数** | **39** | 13 TC + 7 TR + 9 BUG + 4 索引/README + 1 测试方法论 + 1 测试套件全景 + 4 综合 |
|
||
| **测试文件总数** | **78** | `src/backend/tests/` 下(含子目录)|
|
||
| **测试用例总数** | **1403** | pytest 收集,含 3 个 collection 错误文件 |
|
||
| **通过率** | **93.4%** | 1311 passed / 88 failed / 4 xfailed(最近一次基线 2026-08-05)|
|
||
| **TC** | 13 | 按需求/功能分类 |
|
||
| **TR** | 7 | 按版本/日期分类 |
|
||
| **BUG 单** | 9 | P0/P1/P2 归档 |
|
||
| **自动化生成** | ✅ | `scripts/test_inventory.py`(手动重跑 + CI 钩子待补)|
|
||
|
||
> 📈 **与 v1.0 (2026-07-14) 对比**:
|
||
> - 测试文档:12 → 39(+225%)
|
||
> - 测试用例:200+ → 1403(+602%)
|
||
> - 通过率:~95% → 93.4%(-1.6pp,**新增覆盖已暴露的 88 个 collection 错误**)
|
||
|
||
---
|
||
|
||
## 📚 文档清单总览
|
||
|
||
| 分类 | 文档名称 | 测试范围 | 状态 |
|
||
|------|---------|---------|------|
|
||
| **测试规范** | [`00-测试规范/测试方法论指南.md`](./00-测试规范/测试方法论指南.md) | 测试策略、流程、CI/CD | ✅ 生效中 |
|
||
| **测试规范** | ⭐ [`00-测试规范/测试套件全景.md`](./00-测试规范/测试套件全景.md) | **pytest 套件全景(78 文件 / 1403 用例)** | ✅ v1.0(2026-08-05) |
|
||
| **综合报告** | `01-综合报告/QA_COMPREHENSIVE_REPORT.md` | P2/P3 + WebSocket + 坐席 v5.3 | ✅ 通过 |
|
||
| **E2E 测试** | `02-E2E测试/E2E-CHECKLIST-v0.7.0.md` | 扫码登录 + MFA + P0/P1 合规 | ✅ 通过 |
|
||
| **E2E 测试** | `02-E2E测试/方案A-消息发送延时-E2E验证报告-20260708.md` | WS 打字机 + 发送即时性 | ✅ 通过 |
|
||
| **TC** | `03-功能测试用例/TC-REQ-认证-统一认证与登录-v1.0.md` | 企微免密 + 账号密码 + MFA | 📋 待执行 |
|
||
| **TC** | `03-功能测试用例/TC-REQ-通用-005-选项选择持久化-v1.0.md` | 选项选择持久化 | ✅ |
|
||
| **TC** | `03-功能测试用例/TC-REQ-AI-004-AI回复来源标识.md` | AI 回复来源标识 | ✅ |
|
||
| **TC** | `03-功能测试用例/TC-REQ-用户-007-自助诊断面板优化.md` | 自助诊断面板 | ✅ |
|
||
| **TC** | `03-功能测试用例/TC-通用-004-敏感词检测.md` | 敏感词(中台) + §10 鉴权 | ✅ |
|
||
| **TC** | `03-功能测试用例/TC-通用-002-快速回复规则后台管理.md` | 快速回复规则 | ✅ |
|
||
| **TC** | `03-功能测试用例/TC-坐席-007-分诊排查系统.md` | 分诊排查 | ✅ |
|
||
| **TC** | `03-功能测试用例/TC-用户-006-智能推荐重构.md` | 智能推荐重构 | ✅ |
|
||
| **TC** | `03-功能测试用例/TC-用户-005-头像菜单退出.md` | 头像菜单退出 | ✅ |
|
||
| **TC** | `03-功能测试用例/TC-用户-008-H5结束会话失败回归-v1.0.md` | 结束会话失败回归 | ✅ |
|
||
| **TC** | `03-功能测试用例/TC-集成-002-分配模式Tab收编.md` | 分配模式 Tab 收编 | ✅ |
|
||
| **TC** | `03-功能测试用例/TESTING_CALL_AGENT.md` | 呼叫坐席(3 次 AI 回复后出现按钮)| ✅ |
|
||
| **TC** | `03-功能测试用例/Token多IP异常检测测试用例.md` | Token 多 IP 异常 | ✅ |
|
||
| **TC** | `03-功能测试用例/会话存档功能-测试用例.md` | 会话存档 | ✅ |
|
||
| **TR** | `04-版本测试报告/OTP绑定-测试报告-20260708.md` | 首次绑定 + 重置流程 | ✅ |
|
||
| **TR** | `04-版本测试报告/Tier0-测试报告-20260708.md` | 知识库迭代基础设施 | ✅ |
|
||
| **TR** | `04-版本测试报告/Tier1-测试报告-20260708.md` | API 层 + 前端组件 | ✅ |
|
||
| **TR** | `04-版本测试报告/P0串联+P2可视化-测试报告-20260708.md` | 会话关闭建议 + 知识图谱 | ✅ |
|
||
| **TR** | `04-版本测试报告/RBAC-BugFix-测试报告-20260707.md` | admin_users 装饰器修复 | ✅ |
|
||
| **TR** | `04-版本测试报告/看板验真-测试报告-20260707.md` | 5 项存量功能验证 | ⚠️ 3/5 通过 |
|
||
| **TR** | `04-版本测试报告/知识迭代Bug修复报告-20260711.md` | POST /suggestions + Neo4j MERGE | ✅ |
|
||
| **BUG 单** | `05-缺陷单/README.md` | 缺陷单索引 | ✅ |
|
||
| **BUG 单** | `05-缺陷单/BUG-通用-004-敏感词API无鉴权-001.md` | 13 端点裸奔 P0(本次修复) | 🔄 已修复待关闭 |
|
||
| **BUG 单** | `05-缺陷单/BUG-通用-快速回复规则-路由目标筛选500-002.md` | 快速回复路由 500 | ✅ |
|
||
| **BUG 单** | `05-缺陷单/BUG-通用-用户角色分配表格看不清-001.md` | 用户角色表格 | ✅ |
|
||
| **BUG 单** | `05-缺陷单/BUG-AI-打印机安装路由错误-001.md` | AI 路由 | ✅ |
|
||
| **BUG 单** | `05-缺陷单/BUG-坐席-002-选项汇总标签缺失-001.md` | 标签缺失 | ✅ |
|
||
| **BUG 单** | `05-缺陷单/BUG-坐席-图片预览刷新-001.md` | 图片预览 | ✅ |
|
||
| **BUG 单** | `05-缺陷单/BUG-用户-H5请求超时-002.md` | H5 请求超时 | ✅ |
|
||
| **BUG 单** | `05-缺陷单/BUG-用户-H5结束会话失败-003.md` | H5 结束会话失败 | ✅ |
|
||
| **BUG 单** | `05-缺陷单/BUG-用户-坐席离线未限制呼叫人工-001.md` | 坐席离线未限制 | ✅ |
|
||
|
||
---
|
||
|
||
## 🏷️ 按主题分类(v2.0)
|
||
|
||
### 身份认证 & 安全
|
||
- `00-测试规范/测试套件全景.md` ⭐ — pytest 鉴权专项 13 文件 / 212 用例
|
||
- `E2E-CHECKLIST-v0.7.0.md` — 扫码登录、MFA 绑定与验证
|
||
- `TC-REQ-认证-统一认证与登录-v1.0.md` — 企微免密、账号密码、OTP
|
||
- `OTP绑定-测试报告-20260708.md` — 首次绑定、管理员重置
|
||
- `RBAC-BugFix-测试报告-20260707.md` — 权限装饰器修复
|
||
- `BUG-通用-004-敏感词API无鉴权-001.md` — 13 端点鉴权补漏(本次)
|
||
|
||
### 消息 & WebSocket
|
||
- `方案A-消息发送延时-E2E验证报告-20260708.md` — 发送即时返回 + WS 流式
|
||
- `QA_COMPREHENSIVE_REPORT.md` — WebSocket 实时推送功能
|
||
|
||
### 知识库 & AI
|
||
- `Tier0-测试报告-20260708.md` — Neo4j、审批状态机、置信门控
|
||
- `Tier1-测试报告-20260708.md` — Vision、RAGFlow、审批队列、知识迭代
|
||
- `知识迭代Bug修复报告-20260711.md` — POST 端点、Neo4j MERGE、过期检查
|
||
|
||
### 业务功能
|
||
- `TESTING_CALL_AGENT.md` — 呼叫坐席功能
|
||
- `P0串联+P2可视化-测试报告-20260708.md` — 会话关闭建议、知识图谱可视化
|
||
- `看板验真-测试报告-20260707.md` — 排队、AI Wingman、知识库、RBAC、敏感词
|
||
|
||
### 自动化 / pytest 套件
|
||
- `00-测试规范/测试套件全景.md` ⭐ — 78 文件 / 1403 用例 / 13 主题分类
|
||
|
||
---
|
||
|
||
## ⚠️ 已知遗留问题
|
||
|
||
| 问题 | 位置 | 状态 |
|
||
|------|------|------|
|
||
| `test_approval_detect_intent.py` collection 错 | `src/backend/tests/` | 预存在(`_call_dify_approval_intent` 函数 v1.x 治理中移除)|
|
||
| `test_byod.py` collection 错 | `src/backend/tests/` | 预存在(`_keyword_prefilter` 函数 v1.x 治理中移除)|
|
||
| `test_quick_rules.py` collection 错 | `src/backend/tests/` | 预存在 |
|
||
| `test_routing_service.py` 部分用例失败 | `src/backend/tests/` | 88 个 failed 全部与此 3 类相关(已分批 ignore)|
|
||
|
||
---
|
||
|
||
## 🚀 快速上手
|
||
|
||
```bash
|
||
# 1. 跑全部有效套件(跳过 3 个预损坏)
|
||
cd src/backend
|
||
python -m pytest tests/ -q \
|
||
--ignore=tests/test_approval_detect_intent.py \
|
||
--ignore=tests/test_byod.py \
|
||
--ignore=tests/test_quick_rules.py
|
||
|
||
# 2. 跑本次新增的鉴权回归(最关键)
|
||
python -m pytest tests/test_sensitive_words_auth.py -v
|
||
|
||
# 3. 重新生成测试套件全景
|
||
python ../../scripts/test_inventory.py --baseline 1311/88/4
|
||
```
|
||
|
||
---
|
||
|
||
## 🔗 关联文档
|
||
|
||
- 测试方法论指南: [`./00-测试规范/测试方法论指南.md`](./00-测试规范/测试方法论指南.md)
|
||
- 测试套件全景(⭐): [`./00-测试规范/测试套件全景.md`](./00-测试规范/测试套件全景.md)
|
||
- 技术架构: `../02-技术架构/`
|
||
- 产品需求: `../01-产品文档/`
|
||
- 项目管理: `../07-项目管理/项目状态看板.md`
|
||
- 整改记录: `../04-运维文档/部署运维/00-文档规范化整改记录.md`(#12)
|
||
|
||
---
|
||
|
||
> 最后更新:2026-08-05 | 整理人:Duckula v2.0
|