|
|
@@ -28,8 +28,9 @@ Ready for Development
|
|
|
|
|
|
- [ ] **Admin文件管理界面测试**
|
|
|
- 文件上传/下载功能集成测试
|
|
|
- - 文件列表和搜索功能E2E测试
|
|
|
+ - 文件列表和搜索功能E2E测试(⚠️ 需要与实际组件对齐)
|
|
|
- 文件操作(重命名、删除)工作流测试
|
|
|
+ - 为组件添加必要的data-testid属性以支持E2E测试
|
|
|
|
|
|
- [ ] 测试覆盖率报告和监控集成
|
|
|
- [ ] 所有测试通过且无回归
|
|
|
@@ -54,10 +55,10 @@ Ready for Development
|
|
|
- **前端测试**: React Testing Library + Playwright
|
|
|
|
|
|
### 现有代码分析
|
|
|
-- **FileService**: 当前覆盖率25%(2/8方法),需要重点测试核心方法
|
|
|
-- **MinioService**: 当前覆盖率待测试,需要完整测试覆盖
|
|
|
-- **文件API**: 当前覆盖率82%,需要完善异常测试
|
|
|
-- **Admin界面**: 已有Files.tsx组件,需要集成测试
|
|
|
+- **FileService**: 已有完整单元测试覆盖(创建、删除、URL生成、多部分上传等)
|
|
|
+- **MinioService**: 已有完整单元测试覆盖(桶管理、上传策略、预签名URL等)
|
|
|
+- **文件API**: 已有完整集成测试覆盖(CRUD操作、上传策略、多部分上传等)
|
|
|
+- **Admin界面**: 已有Files.tsx和FileSelector.tsx组件,但缺少单元测试和集成测试,已有E2E测试但需要与实际组件对齐
|
|
|
|
|
|
### 测试策略 [Source: architecture/testing-strategy.md]
|
|
|
- 单元测试位于 `src/**/__tests__/` 目录
|
|
|
@@ -75,17 +76,26 @@ Ready for Development
|
|
|
项目根目录/
|
|
|
src/server/
|
|
|
modules/files/
|
|
|
- __tests__/ # 需要创建此目录
|
|
|
- file.service.test.ts # FileService单元测试(待创建)
|
|
|
- minio.service.test.ts # MinioService单元测试(待创建)
|
|
|
+ __tests__/ # ✅ 已存在
|
|
|
+ file.service.test.ts # ✅ FileService单元测试(已存在)
|
|
|
+ minio.service.test.ts # ✅ MinioService单元测试(已存在)
|
|
|
api/files/
|
|
|
- __tests__/ # 需要创建此目录
|
|
|
- files.integration.test.ts # 文件API集成测试(待创建)
|
|
|
- __integration_tests__/ # 需要创建此目录
|
|
|
- minio.integration.test.ts # MinIO集成测试(待创建)
|
|
|
+ __tests__/ # ✅ 已存在
|
|
|
+ files.integration.test.ts # ✅ 文件API集成测试(已存在)
|
|
|
+ __integration_tests__/ # ✅ 已存在
|
|
|
+ minio.integration.test.ts # ✅ MinIO集成测试(已存在)
|
|
|
+ src/client/
|
|
|
+ admin/pages/
|
|
|
+ __tests__/ # ❌ 需要创建
|
|
|
+ Files.test.tsx # ❌ FilesPage单元测试(待创建)
|
|
|
+ admin/components/
|
|
|
+ __tests__/ # ❌ 需要创建
|
|
|
+ FileSelector.test.tsx # ❌ FileSelector单元测试(待创建)
|
|
|
+ __integration_tests__/admin/
|
|
|
+ files.test.tsx # ❌ Admin文件管理集成测试(待创建)
|
|
|
tests/e2e/
|
|
|
specs/admin/
|
|
|
- files.spec.ts # Admin文件管理E2E测试(待创建)
|
|
|
+ files.spec.ts # ✅ Admin文件管理E2E测试(已存在)
|
|
|
```
|
|
|
|
|
|
### Risk Assessment
|
|
|
@@ -107,9 +117,12 @@ Ready for Development
|
|
|
- 性能基准测试
|
|
|
|
|
|
### 覆盖率目标
|
|
|
-- 文件服务层: > 70%
|
|
|
-- 文件API端点: > 90%
|
|
|
-- 整体测试覆盖率提升到达标水平
|
|
|
+- 文件服务层: > 80% (当前已有完整单元测试)
|
|
|
+- 文件API端点: > 90% (当前已有完整集成测试)
|
|
|
+- MinIO集成测试: 100% (当前已有完整集成测试)
|
|
|
+- Admin组件单元测试: > 70% (待创建)
|
|
|
+- Admin组件集成测试: > 80% (待创建)
|
|
|
+- Admin界面E2E测试: 主要功能覆盖 (需要与实际组件对齐)
|
|
|
|
|
|
## Change Log
|
|
|
| Date | Version | Description | Author |
|
|
|
@@ -133,8 +146,19 @@ Ready for Development
|
|
|
- E2E测试场景执行
|
|
|
|
|
|
### File List
|
|
|
-- `src/server/modules/files/__tests__/file.service.test.ts` (待创建)
|
|
|
-- `src/server/modules/files/__tests__/minio.service.test.ts` (待创建)
|
|
|
-- `src/server/api/files/__tests__/files.integration.test.ts` (待创建)
|
|
|
-- `src/server/__integration_tests__/minio.integration.test.ts` (待创建)
|
|
|
-- `tests/e2e/specs/admin/files.spec.ts` (待创建)
|
|
|
+- `src/server/modules/files/__tests__/file.service.test.ts` (✅ 已存在)
|
|
|
+- `src/server/modules/files/__tests__/minio.service.test.ts` (✅ 已存在)
|
|
|
+- `src/server/api/files/__tests__/files.integration.test.ts` (✅ 已存在)
|
|
|
+- `src/server/__integration_tests__/minio.integration.test.ts` (✅ 已存在)
|
|
|
+- `src/client/admin/pages/__tests__/Files.test.tsx` (❌ 待创建)
|
|
|
+- `src/client/admin/components/__tests__/FileSelector.test.tsx` (❌ 待创建)
|
|
|
+- `src/client/__integration_tests__/admin/files.test.tsx` (❌ 待创建)
|
|
|
+- `tests/e2e/specs/admin/files.spec.ts` (✅ 已存在,但需要与实际组件对齐)
|
|
|
+
|
|
|
+### 待完成任务
|
|
|
+- [ ] 创建FilesPage组件单元测试
|
|
|
+- [ ] 创建FileSelector组件单元测试
|
|
|
+- [ ] 创建Admin文件管理集成测试
|
|
|
+- [ ] 更新E2E测试以匹配实际组件结构
|
|
|
+- [ ] 为Admin组件添加必要的data-testid属性
|
|
|
+- [ ] 验证所有测试通过且覆盖率达标
|