---
type: qa-report
outputFor: [devops, boss]
dependencies: [tasks]
---

# QA 测试报告

## 报告信息
- **功能名称**：{{FEATURE_NAME}}
- **版本**：1.0
- **测试日期**：{{DATE}}
- **测试者**：QA Agent
- **测试环境**：{{ENVIRONMENT}}

## 摘要

> Boss Agent 请优先阅读本节判断是否通过质量门禁。

- **总体结论**：✅ 可发布 / ⚠️ 有条件发布 / ❌ 不可发布
- **测试覆盖率**：[X%]
- **通过 / 失败**：[X 通过 / X 失败]
- **P0/P1 Bug**：[数量，无则填"无"]
- **E2E 状态**：[通过 / 失败 / 未执行]

## 0. Evidence Summary

| 证据类别 | 状态 | 证据 |
|----------|------|------|
| 核心用户路径 | 通过 / 失败 / 未验证 | [命令、截图、日志或 Replay ID] |
| 真实 payload | 通过 / 失败 / 未验证 | [请求 payload 捕获位置] |
| schema 校验 | 通过 / 失败 / 未验证 | [真实 server schema / shared schema / API response] |
| Contract Matrix | 通过 / 失败 / 未验证 | [tasks.md Contract Matrix 行或测试文件] |
| 红测转绿 | 通过 / 失败 / 未验证 | [失败命令与通过的同一命令] |
| 权限攻击 | 通过 / 失败 / 未验证 | [匿名主体 / 授权主体 / 非授权主体 / 过期登录态 / 越权提升] |
| 分页/空态/旧数据 | 通过 / 失败 / 未验证 | [第二页、empty state、旧数据证据] |

> `未验证` 表示项目需要该证据但尚未证明；`不适用` 表示项目没有对应行为或业务规则。

## 0.1 核心用户路径 Replay

| Path ID | 用户路径 | 执行方式 | 关键步骤 | 结果 | 证据 |
|---------|----------|----------|----------|------|------|
| PATH-001 | [核心用户路径] | [E2E / Browser / API integration / Manual replay] | [steps] | 通过 / 失败 / 未验证 | [evidence] |

## 0.2 Payload 与 Schema Evidence

| Submit | 真实 payload | Server Schema | 响应 | 状态 |
|--------|--------------|---------------|------|------|
| [提交动作] | [captured payload] | [真实 server schema / shared schema / API response] | [服务端响应] | 通过 / 失败 / 未验证 |

## 0.3 QA Attack Checks

| 攻击面 | 场景 | 预期 | 实际 | 状态 |
|--------|------|------|------|------|
| 越权 | 非授权主体修改受保护资源 | 403 或等价拒绝响应 | [记录真实响应] | 通过 / 失败 / 未验证 |
| 第二页 | 列表进入 page=2 | 数据和分页状态正确 | [记录真实结果] | 通过 / 失败 / 未验证 |
| 旧数据 | migration 前数据读取 | 不丢失且字段兼容 | [记录真实结果] | 通过 / 失败 / 未验证 |
| 业务数值一致 | 如适用，UI 显示数值、阈值或限制与服务端记录一致 | 数值、状态或限制一致 | [记录真实结果] | 通过 / 失败 / 未验证 / 不适用 |

---

## 1. 测试概要

### 1.1 测试范围
- [x] 功能测试
- [x] 单元测试
- [x] 集成测试
- [ ] 端到端测试
- [ ] 性能测试
- [ ] 安全测试

### 1.2 测试结论

| 指标 | 结果 |
|------|------|
| **总体状态** | 🟢 通过 / 🟡 有条件通过 / 🔴 失败 |
| **阻塞问题** | 有 / 无 |
| **建议发布** | 是 / 否 |

---

## 2. 验收标准验证

### 2.1 功能需求验证

| FR ID | 描述 | 状态 | 备注 |
|-------|------|------|------|
| FR-001 | [需求描述] | 🟢 通过 | [备注] |
| FR-002 | [需求描述] | 🟢 通过 | [备注] |
| FR-003 | [需求描述] | 🔴 失败 | [失败原因] |

### 2.2 验收标准验证

| Story | AC ID | 描述 | 状态 | 备注 |
|-------|-------|------|------|------|
| S-001 | AC-1 | [标准描述] | 🟢 通过 | |
| S-001 | AC-2 | [标准描述] | 🟢 通过 | |
| S-002 | AC-1 | [标准描述] | 🟡 部分通过 | [说明] |

---

## 3. 自动化测试结果

### 3.1 测试汇总

| 测试类型 | 总数 | 通过 | 失败 | 跳过 | 通过率 |
|----------|------|------|------|------|--------|
| 单元测试 | {{UNIT_TOTAL}} | {{UNIT_PASS}} | {{UNIT_FAIL}} | {{UNIT_SKIP}} | {{UNIT_RATE}}% |
| 集成测试 | {{INT_TOTAL}} | {{INT_PASS}} | {{INT_FAIL}} | {{INT_SKIP}} | {{INT_RATE}}% |
| E2E 测试 | {{E2E_TOTAL}} | {{E2E_PASS}} | {{E2E_FAIL}} | {{E2E_SKIP}} | {{E2E_RATE}}% |

### 3.2 测试覆盖率

| 指标 | 当前值 | 目标值 | 状态 |
|------|--------|--------|------|
| 语句覆盖率 | {{STMT_COV}}% | 80% | 达标/未达标 |
| 分支覆盖率 | {{BRANCH_COV}}% | 70% | 达标/未达标 |
| 函数覆盖率 | {{FUNC_COV}}% | 80% | 达标/未达标 |
| 行覆盖率 | {{LINE_COV}}% | 80% | 达标/未达标 |

### 3.3 失败用例详情

| 测试文件 | 测试名称 | 错误信息 | 优先级 |
|----------|----------|----------|--------|
| `tests/xxx.test.ts` | [测试名] | [错误信息] | 高/中/低 |

### 3.4 测试工具与方法

<!-- 记录实际使用的测试工具和方法，确保可追溯 -->

| 测试类型 | 使用工具 | 执行命令/方法 | 备注 |
|----------|----------|---------------|------|
| 单元测试 | {{UNIT_TOOL}} | {{UNIT_CMD}} | {{UNIT_NOTES}} |
| 集成测试 | {{INT_TOOL}} | {{INT_CMD}} | {{INT_NOTES}} |
| E2E 测试 | {{E2E_TOOL}} | {{E2E_CMD}} | {{E2E_NOTES}} |
| API 测试 | {{API_TOOL}} | {{API_CMD}} | {{API_NOTES}} |
| 浏览器自动化 | {{BROWSER_TOOL}} | {{BROWSER_CMD}} | {{BROWSER_NOTES}} |

**浏览器自动化工具：**
- agent-browser 可用：{{AGENT_BROWSER_AVAILABLE}} (是/否)
- 实际使用工具：{{BROWSER_AUTOMATION_TOOL}}
- 截图证据：{{SCREENSHOT_PATHS}}

**MCP 工具使用情况：**
- 可用 MCP 工具：{{AVAILABLE_MCP_TOOLS}}
- 实际使用的 MCP 工具：{{USED_MCP_TOOLS}}
- 未使用原因（如有）：{{MCP_SKIP_REASON}}

---

## 4. 发现的 Bug

### 4.1 Bug 汇总

| 严重程度 | 数量 | 已修复 | 待修复 |
|----------|------|--------|--------|
| 🔴 严重 | {{CRITICAL_COUNT}} | {{CRITICAL_FIXED}} | {{CRITICAL_OPEN}} |
| 🟠 高 | {{HIGH_COUNT}} | {{HIGH_FIXED}} | {{HIGH_OPEN}} |
| 🟡 中 | {{MEDIUM_COUNT}} | {{MEDIUM_FIXED}} | {{MEDIUM_OPEN}} |
| 🟢 低 | {{LOW_COUNT}} | {{LOW_FIXED}} | {{LOW_OPEN}} |

### 4.2 Bug 详情

#### BUG-001：{{BUG_TITLE}}

| 属性 | 值 |
|------|-----|
| **严重程度** | 🔴 严重 / 🟠 高 / 🟡 中 / 🟢 低 |
| **状态** | 新建 / 确认 / 已修复 / 已验证 |
| **发现者** | QA Agent |
| **发现日期** | {{DATE}} |

**描述**：
[Bug 详细描述]

**复现步骤**：
1. [步骤 1]
2. [步骤 2]
3. [步骤 3]

**预期结果**：
[预期行为]

**实际结果**：
[实际行为]

**截图/日志**：
```
[相关日志]
```

**修复建议**：
[建议的修复方案]

---

#### BUG-002：{{BUG_TITLE}}
...

---

## 5. 边界情况测试

| 场景 | 输入 | 预期结果 | 实际结果 | 状态 |
|------|------|----------|----------|------|
| 空输入 | `""` | 显示错误提示 | [实际] | 🟢/🔴 |
| 超长输入 | `"xxx..."` | 截断或提示 | [实际] | 🟢/🔴 |
| 特殊字符 | `"<script>"` | 正确转义 | [实际] | 🟢/🔴 |
| 并发操作 | 多次点击 | 防重复提交 | [实际] | 🟢/🔴 |

---

## 6. 性能测试（如适用）

### 6.1 性能指标

| 指标 | 目标值 | 实际值 | 状态 |
|------|--------|--------|------|
| 首屏加载 (FCP) | < 2s | {{FCP}}s | 达标/未达标 |
| 可交互时间 (TTI) | < 3s | {{TTI}}s | 达标/未达标 |
| API 响应 (P99) | < 200ms | {{API_P99}}ms | 达标/未达标 |
| 内存占用 | < 100MB | {{MEMORY}}MB | 达标/未达标 |

### 6.2 性能问题

| 问题 | 影响 | 建议优化 |
|------|------|----------|
| [问题描述] | [影响程度] | [优化建议] |

---

## 7. 兼容性测试（如适用）

> ⚠️ **注意**：以下结果必须基于真实测试执行。如未执行测试，状态应标记为 `⚪ 未测试`。

### 7.1 浏览器兼容

<!-- 
执行方式：
1. 使用 Playwright 多浏览器测试：npx playwright test --project=chromium --project=firefox --project=webkit
2. 或使用 BrowserStack/Sauce Labs 等云测试平台
3. 如果无法执行，标记为 ⚪ 未测试
-->

| 浏览器 | 版本 | 状态 | 测试方式 | 备注 |
|--------|------|------|----------|------|
| Chrome | {{CHROME_VERSION}} | {{CHROME_STATUS}} | {{CHROME_METHOD}} | {{CHROME_NOTES}} |
| Firefox | {{FIREFOX_VERSION}} | {{FIREFOX_STATUS}} | {{FIREFOX_METHOD}} | {{FIREFOX_NOTES}} |
| Safari | {{SAFARI_VERSION}} | {{SAFARI_STATUS}} | {{SAFARI_METHOD}} | {{SAFARI_NOTES}} |
| Edge | {{EDGE_VERSION}} | {{EDGE_STATUS}} | {{EDGE_METHOD}} | {{EDGE_NOTES}} |

### 7.2 设备兼容

<!-- 
执行方式：
1. 使用 Playwright 设备模拟：npx playwright test --project="Mobile Chrome"
2. 或使用真实设备测试
3. 如果无法执行，标记为 ⚪ 未测试
-->

| 设备类型 | 分辨率 | 状态 | 测试方式 | 备注 |
|----------|--------|------|----------|------|
| 桌面 | {{DESKTOP_RES}} | {{DESKTOP_STATUS}} | {{DESKTOP_METHOD}} | {{DESKTOP_NOTES}} |
| 平板 | {{TABLET_RES}} | {{TABLET_STATUS}} | {{TABLET_METHOD}} | {{TABLET_NOTES}} |
| 手机 | {{MOBILE_RES}} | {{MOBILE_STATUS}} | {{MOBILE_METHOD}} | {{MOBILE_NOTES}} |

---

## 8. 测试建议

### 8.1 发布建议
- [ ] 所有严重/高优先级 Bug 已修复
- [ ] 核心功能测试通过
- [ ] 回归测试通过
- [ ] 性能达标

**发布决定**：建议发布 / 暂不建议发布

### 8.2 改进建议
1. [改进建议 1]
2. [改进建议 2]

### 8.3 技术债务
1. [需要后续处理的技术债务]

---

## 变更记录

| 版本 | 日期 | 作者 | 变更内容 |
|------|------|------|----------|
| 1.0 | {{DATE}} | QA Agent | 初始版本 |
