Преглед изворни кода

📝 docs(test): update admin panel testing documentation

- 完善集成测试重点,明确测试位置在`src/client/admin/__integration_tests__/`
- 细化E2E测试重点,指定测试文件位置为`tests/e2e/specs/admin/`
- 添加测试执行命令示例,包括组件测试、API测试和E2E测试的运行方式
- 补充技术约束中的测试位置规范和性能指标(集成测试<5分钟,E2E测试<10分钟)
- 更新集成点信息,明确Vitest配置文件和GitHub Actions工作流关联
yourname пре 2 месеци
родитељ
комит
465823d175
1 измењених фајлова са 49 додато и 13 уклоњено
  1. 49 13
      docs/stories/001.004.story.md

+ 49 - 13
docs/stories/001.004.story.md

@@ -52,29 +52,39 @@ Ready for Development
 - **其他组件**: DataTablePagination [路径: src/client/admin/components/DataTablePagination.tsx], AuthProvider [路径: src/client/admin/hooks/AuthProvider.tsx]
 
 ### 测试策略
-**集成测试重点**:
-- 组件交互和状态管理测试
-- API调用和数据处理验证 [API端点: /api/users/*, /api/auth/login]
-- 用户界面行为测试
+**集成测试重点** (`src/client/admin/__integration_tests__/`):
+- 组件与真实API集成测试 [API端点: /api/users/*, /api/auth/login]
+- 用户界面行为和数据流测试
 - 表单验证和错误处理测试
+- 路由和导航集成测试
 
-**E2E测试重点**:
+**E2E测试重点** (`tests/e2e/specs/admin/`):
 - 完整用户工作流测试 (登录 → Dashboard → 用户管理)
-- 跨页面导航验证
-- 真实浏览器环境测试
-- 数据持久化和状态管理测试
+- 跨页面导航和状态持久化验证
+- 真实浏览器环境和网络条件测试
+- 生产环境场景模拟
 
 ### 技术约束
 - **测试框架**: Vitest + Testing Library (集成测试), Playwright (E2E测试)
 - **兼容性**: 保持现有功能不变
-- **性能**: 测试执行时间合理
-- **测试数据**: 使用现有测试数据工厂模式 [参考: 现有测试文件中的mock数据模式]
+- **性能**: 测试执行时间合理(集成测试<5分钟,E2E测试<10分钟)
+- **测试数据**: 使用测试数据库事务回滚确保数据隔离 [参考: docs/integration-testing-best-practices.md]
 - **环境要求**: 需要配置测试数据库连接和认证token
+- **测试位置**:
+  - 集成测试: `src/client/admin/__integration_tests__/*.test.tsx` (使用 `.test.tsx` 后缀以匹配现有配置)
+  - E2E测试: `tests/e2e/specs/admin/*.spec.ts`
+  - 现有单元测试: `src/client/admin/**/__tests__/*.test.tsx` (保持不变)
 
 ### 集成点
-- 现有Vitest配置
-- CI/CD流水线
-- 测试覆盖率报告
+- **现有Vitest配置**: vitest.config.components.ts (组件测试), vitest.config.ts (API测试)
+- **CI/CD流水线**: GitHub Actions工作流 [.github/workflows/test.yml]
+  - 组件测试阶段: 运行 `npm run test:components`
+  - API测试阶段: 运行 `npm run test:api`
+  - E2E测试阶段: 运行 `npm run test:e2e`
+  - 覆盖率报告: 上传到Coveralls/Codecov
+  - 测试结果: JUnit格式报告生成
+- **测试覆盖率报告**: 集成到CI流水线,阈值检查
+- **环境变量**: 需要配置测试数据库连接字符串和认证密钥
 
 ### 安全考虑
 - **认证数据保护**: 测试中使用的认证token需要安全处理,避免泄露
@@ -94,6 +104,32 @@ Ready for Development
   - Login.tsx: >95%
   - 相关组件: >70%
 
+### 测试执行命令
+```bash
+# 运行组件测试 (集成测试)
+npm run test:components
+
+# 运行API测试
+npm run test:api
+
+# 运行E2E测试
+npm run test:e2e
+
+# 运行所有测试
+npm run test
+
+# 运行特定组件测试文件
+npm run test:components -- src/client/admin/__integration_tests__/dashboard.test.tsx
+
+# 运行特定E2E测试文件
+npm run test:e2e -- tests/e2e/specs/admin/dashboard.spec.ts
+
+# 生成覆盖率报告
+npm run test:components:coverage
+npm run test:api:coverage
+npm run test:coverage
+```
+
 ### 测试环境
 - **集成测试**: jsdom环境
 - **E2E测试**: Chromium浏览器