Files
user-system/frontend/admin/TEST_PLAN.md

120 lines
5.0 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.
# 前端测试补充计划
## 测试补充原则
1. 按依赖层级从底层到上层进行测试
2. 每个模块测试通过后再进行下一个
3. 相关联模块全部测试通过后提交
## 测试补充顺序
### 阶段 1: Lib 层基础工具测试
**优先级: 高** - 这是其他模块依赖的基础
| 序号 | 文件 | 测试文件 | 状态 | 依赖 |
|------|------|----------|------|------|
| 1.1 | lib/config.ts | lib/config.test.ts | ✓ 已测 | 无 |
| 1.2 | lib/device-fingerprint.ts | lib/device-fingerprint.test.ts | ✓ 已测 | 无 |
| 1.3 | lib/errors/index.ts | lib/errors/index.test.ts | ✓ 已测 | 无 |
| 1.4 | lib/storage/index.ts | lib/storage/index.test.ts | ✓ 已测 | 无 |
| 1.5 | lib/hooks/useBreadcrumbs.ts | lib/hooks/useBreadcrumbs.test.ts | ✓ 已测 | 无 |
| 1.6 | lib/http/index.ts | lib/http/index.test.ts | ✓ 已测 | lib/storage |
**阶段提交点**: 所有 lib 测试通过后提交一次
---
### 阶段 2: Services 层 API 服务测试
**优先级: 高** - 页面组件依赖的服务层
| 序号 | 文件 | 测试文件 | 状态 | 依赖 |
|------|------|----------|------|------|
| 2.1 | services/devices.ts | services/devices.test.ts | ✓ 已测 | lib/http |
| 2.2 | services/login-logs.ts | services/login-logs.test.ts | ✓ 已测 | lib/http |
| 2.3 | services/operation-logs.ts | services/operation-logs.test.ts | ✓ 已测 | lib/http |
| 2.4 | services/permissions.ts | services/permissions.test.ts | ✓ 已测 | lib/http |
| 2.5 | services/profile.ts | services/profile.test.ts | ✓ 已测 | lib/http |
| 2.6 | services/roles.ts | services/roles.test.ts | ✓ 已测 | lib/http |
| 2.7 | services/settings.ts | services/settings.test.ts | ✓ 已测 | lib/http |
| 2.8 | services/stats.ts | services/stats.test.ts | ✓ 已测 | lib/http |
| 2.9 | services/import-export.ts | services/import-export.test.ts | ✓ 已测 | lib/http |
**阶段提交点**: 所有 services 测试通过后提交一次
---
### 阶段 3: Components 层组件测试
**优先级: 中** - 可复用的 UI 组件
#### 3.1 通用组件
| 序号 | 文件 | 测试文件 | 状态 | 依赖 |
|------|------|----------|------|------|
| 3.1.1 | components/common/PageHeader/PageHeader.tsx | PageHeader.test.tsx | 待测 | 无 |
| 3.1.2 | components/common/ErrorBoundary/index.ts | ErrorBoundary.test.tsx | ✓ 已测(已有) | 无 |
#### 3.2 反馈组件
| 序号 | 文件 | 测试文件 | 状态 | 依赖 |
|------|------|----------|------|------|
| 3.2.1 | components/feedback/PageState/index.ts | PageState.test.tsx | ✓ 已测(已有) | 无 |
#### 3.3 路由守卫组件
| 序号 | 文件 | 测试文件 | 状态 | 依赖 |
|------|------|----------|------|------|
| 3.3.1 | components/guards/RequireAdmin.tsx | RequireAdmin.test.tsx | ✓ 已测(已有) | lib/auth |
| 3.3.2 | components/guards/RequireAuth.tsx | RequireAuth.test.tsx | ✓ 已测(已有) | lib/auth |
#### 3.4 布局组件
| 序号 | 文件 | 测试文件 | 状态 | 依赖 |
|------|------|----------|------|------|
| 3.4.1 | components/layout/PageLayout/ContentCard.tsx | ContentCard.test.tsx | ✓ 已测 | 无 |
| 3.4.2 | components/layout/PageLayout/FilterCard.tsx | FilterCard.test.tsx | ✓ 已测 | 无 |
| 3.4.3 | components/layout/PageLayout/TableCard.tsx | TableCard.test.tsx | ✓ 已测 | 无 |
| 3.4.4 | components/layout/PageLayout/TreeCard.tsx | TreeCard.test.tsx | ✓ 已测 | 无 |
| 3.4.5 | components/layout/PageLayout/PageLayout.tsx | PageLayout.test.tsx | ✓ 已测 | 以上组件 |
**阶段提交点**: 所有 components 测试通过后提交一次
---
### 阶段 4: Layouts 层布局测试
**优先级: 中**
| 序号 | 文件 | 测试文件 | 状态 | 依赖 |
|------|------|----------|------|------|
| 4.1 | layouts/AuthLayout/AuthLayout.tsx | AuthLayout.test.tsx | ✓ 已测 | 无 |
**阶段提交点**: layouts 测试通过后提交一次
---
### 阶段 5: 页面细节组件测试
**优先级: 低** - 页面级组件已有主要测试
| 序号 | 文件 | 测试文件 | 状态 | 依赖 |
|------|------|----------|------|------|
| 5.1 | pages/admin/LoginLogsPage/LoginLogDetailDrawer.tsx | LoginLogDetailDrawer.test.tsx | ✓ 已测 | services/login-logs |
| 5.2 | pages/admin/OperationLogsPage/OperationLogDetailDrawer.tsx | OperationLogDetailDrawer.test.tsx | ✓ 已测 | services/operation-logs |
| 5.3 | pages/admin/ProfileSecurityPage/ProfileSecurityPage.tsx | 已有测试 | 检查覆盖率 | 多个 services |
**阶段提交点**: 最终提交
---
## 执行流程
对于每个测试文件:
1. 阅读源文件,理解功能和接口
2. 创建测试文件,编写测试用例
3. 运行测试确保通过
4. 检查相关联模块测试是否仍然通过
5. 阶段完成后提交
## 当前进度
- [x] 阶段 1: Lib 层测试 ✓ (已提交)
- [x] 阶段 2: Services 层测试 ✓ (已提交)
- [x] 阶段 3: Components 层测试 ✓ (已提交)
- [x] 阶段 4: Layouts 层测试 ✓ (已提交)
- [x] 阶段 5: 页面细节组件测试 ✓ (已提交)
**总测试数**: 518 个测试82 个测试文件,全部通过