Story 005.005: 清理和优化
Status
Draft
Story
As a 开发人员,
I want 清理web目录中已迁移的测试文件并优化测试架构,
so that 项目保持整洁的代码结构,CI/CD流水线支持新的测试架构,文档反映最新的测试组织方式
Acceptance Criteria
- 清理web目录中已迁移的测试文件
- 更新CI/CD配置支持新的测试结构
- 更新文档说明新的测试架构
- 验证整体测试覆盖率
Tasks / Subtasks
Dev Notes
技术栈信息 [Source: architecture/tech-stack.md]
- 测试框架: Vitest 3.2.4
- 运行时: Node.js 20.18.3
- 模块系统: ES 模块
- 数据库: PostgreSQL 17 + TypeORM
- API框架: Hono 4.8.5
- 测试工具: hono/testing (内置)
项目结构信息 [Source: architecture/source-tree.md]
- 当前web测试位置: web/tests/
- integration/server/ - 已迁移到packages/server的集成测试
- unit/server/ - 已迁移到packages/server的单元测试
- 目标packages/server测试位置: packages/server/tests/
- integration/ - 集成测试
- unit/ - 单元测试
- CI/CD配置位置: .github/workflows/
- integration-tests.yml
- component-tests.yml
- e2e-tests.yml
测试策略信息 [Source: architecture/testing-strategy.md]
- 单元测试位置: tests/unit/*/.test.{ts,tsx}
- 集成测试位置: tests/integration/*/.test.{ts,tsx}
- E2E测试位置: tests/e2e/*/.test.{ts,tsx}
- 测试框架: Vitest + Testing Library + hono/testing + Playwright
- 覆盖率目标: 单元测试 ≥ 80%,集成测试 ≥ 60%
- 测试执行频率: 每次代码变更
先前故事洞察 [Source: docs/stories/005.003.story.md, docs/stories/005.004.story.md]
- 工具类单元测试已成功迁移到packages/server/tests/unit/utils/
- 集成测试已成功迁移到packages/server/tests/integration/
- 所有迁移的测试在packages/server环境中正常运行
- 测试覆盖率保持稳定,packages/server当前覆盖率为72.89%
- 需要清理web目录中重复的测试文件以保持代码整洁
需要清理的web测试文件
- web/tests/integration/server/
- auth.integration.test.ts (已迁移)
- backup.integration.test.ts (已迁移)
- files/files.integration.test.ts (已迁移)
- files/minio.integration.test.ts (已迁移)
- users.integration.test.ts (已迁移)
- web/tests/unit/server/
- modules/files/file.service.test.ts (已迁移)
- modules/files/minio.service.test.ts (已迁移)
- modules/user.service.test.ts (已迁移)
- utils/backup.test.ts (已迁移)
- utils/restore.test.ts (已迁移)
CI/CD配置更新需求
- GitHub Actions工作流: 需要更新以支持packages/server的独立测试执行
- 测试脚本: web/package.json中的测试脚本可能需要调整
- 覆盖率报告: 需要确保packages/server的覆盖率被正确收集和报告
Testing
- 测试文件位置:
- packages/server/tests/unit/ 和 packages/server/tests/integration/
- web/tests/unit/ 和 web/tests/integration/ (仅保留web特定测试)
- 测试框架: Vitest + Testing Library + hono/testing
- 覆盖率要求:
- packages/server: 单元测试 ≥ 80%,集成测试 ≥ 60%
- web: 组件测试 ≥ 70%,集成测试 ≥ 50%
- 测试标准:
- 删除重复的测试文件
- 确保所有测试在正确的位置运行
- 验证CI/CD流水线支持新的测试结构
- 保持测试覆盖率稳定
Change Log
| Date |
Version |
Description |
Author |
| 2025-11-09 |
1.0 |
初始故事创建 |
Bob (Scrum Master) |
Dev Agent Record
Agent Model Used
Debug Log References
Completion Notes List
File List
QA Results