|
@@ -1,6 +1,6 @@
|
|
|
# Story 13.6: 首页看板人才数据同步测试
|
|
# Story 13.6: 首页看板人才数据同步测试
|
|
|
|
|
|
|
|
-Status: ready-for-dev
|
|
|
|
|
|
|
+Status: done
|
|
|
|
|
|
|
|
<!-- Note: Validation is optional. Run validate-create-story for quality check before dev-story. -->
|
|
<!-- Note: Validation is optional. Run validate-create-story for quality check before dev-story. -->
|
|
|
|
|
|
|
@@ -67,36 +67,36 @@ Status: ready-for-dev
|
|
|
|
|
|
|
|
## Tasks / Subtasks
|
|
## Tasks / Subtasks
|
|
|
|
|
|
|
|
-- [ ] 任务 1: 扩展 EnterpriseMiniPage 支持首页看板人才数据 (AC: #1, #2, #3, #4)
|
|
|
|
|
- - [ ] 1.1 添加首页看板选择器(分配人才列表、核心统计卡片等)
|
|
|
|
|
- - [ ] 1.2 实现 getAssignedTalentCards() 方法
|
|
|
|
|
- - [ ] 1.3 实现 getCoreStatistics() 方法
|
|
|
|
|
- - [ ] 1.4 实现下拉刷新方法 refreshDashboard()
|
|
|
|
|
- - [ ] 1.5 实现 waitForTalentCard() 方法
|
|
|
|
|
-
|
|
|
|
|
-- [ ] 任务 2: 创建跨端首页看板人才同步测试文件 (AC: #1, #5, #6)
|
|
|
|
|
- - [ ] 2.1 创建 `web/tests/e2e/specs/cross-platform/dashboard-sync.spec.ts`
|
|
|
|
|
- - [ ] 2.2 配置测试 fixtures(adminLoginPage, orderManagementPage, enterpriseMiniPage)
|
|
|
|
|
- - [ ] 2.3 添加测试前置条件(需要测试平台、公司、企业用户、残疾人数据)
|
|
|
|
|
-
|
|
|
|
|
-- [ ] 任务 3: 实现分配人才列表同步验证测试 (AC: #1, #3)
|
|
|
|
|
- - [ ] 3.1 编写"后台添加人员 → 首页显示人才卡片"测试
|
|
|
|
|
- - [ ] 3.2 验证人才卡片信息完整性(姓名、残疾类型、等级)
|
|
|
|
|
- - [ ] 3.3 验证人才数据与后台人员详情一致
|
|
|
|
|
-
|
|
|
|
|
-- [ ] 任务 4: 实现核心统计数字同步测试 (AC: #2)
|
|
|
|
|
- - [ ] 4.1 编写"在职人员统计数字增加"测试
|
|
|
|
|
- - [ ] 4.2 编写"待入职统计数字增加"测试
|
|
|
|
|
- - [ ] 4.3 验证统计数字与后台实际分配人数一致
|
|
|
|
|
-
|
|
|
|
|
-- [ ] 任务 5: 实现数据刷新时效性测试 (AC: #4)
|
|
|
|
|
- - [ ] 5.1 实现轮询等待机制
|
|
|
|
|
- - [ ] 5.2 验证正常同步时间(≤ 3 秒)
|
|
|
|
|
- - [ ] 5.3 验证下拉刷新功能
|
|
|
|
|
-
|
|
|
|
|
-- [ ] 任务 6: 实现测试数据清理策略 (AC: #1)
|
|
|
|
|
- - [ ] 6.1 添加 afterEach 钩子清理分配关系数据
|
|
|
|
|
- - [ ] 6.2 验证清理后首页看板不再显示该人才
|
|
|
|
|
|
|
+- [x] 任务 1: 扩展 EnterpriseMiniPage 支持首页看板人才数据 (AC: #1, #2, #3, #4)
|
|
|
|
|
+ - [x] 1.1 添加首页看板选择器(分配人才列表、核心统计卡片等)
|
|
|
|
|
+ - [x] 1.2 实现 getAssignedTalentCards() 方法
|
|
|
|
|
+ - [x] 1.3 实现 getCoreStatistics() 方法
|
|
|
|
|
+ - [x] 1.4 实现下拉刷新方法 refreshDashboard()
|
|
|
|
|
+ - [x] 1.5 实现 waitForTalentCard() 方法
|
|
|
|
|
+
|
|
|
|
|
+- [x] 任务 2: 创建跨端首页看板人才同步测试文件 (AC: #1, #5, #6)
|
|
|
|
|
+ - [x] 2.1 创建 `web/tests/e2e/specs/cross-platform/dashboard-sync.spec.ts`
|
|
|
|
|
+ - [x] 2.2 配置测试 fixtures(adminLoginPage, orderManagementPage, enterpriseMiniPage)
|
|
|
|
|
+ - [x] 2.3 添加测试前置条件(需要测试平台、公司、企业用户、残疾人数据)
|
|
|
|
|
+
|
|
|
|
|
+- [x] 任务 3: 实现分配人才列表同步验证测试 (AC: #1, #3)
|
|
|
|
|
+ - [x] 3.1 编写"后台添加人员 → 首页显示人才卡片"测试
|
|
|
|
|
+ - [x] 3.2 验证人才卡片信息完整性(姓名、残疾类型、等级)
|
|
|
|
|
+ - [x] 3.3 验证人才数据与后台人员详情一致
|
|
|
|
|
+
|
|
|
|
|
+- [x] 任务 4: 实现核心统计数字同步测试 (AC: #2)
|
|
|
|
|
+ - [x] 4.1 编写"在职人员统计数字增加"测试
|
|
|
|
|
+ - [x] 4.2 编写"待入职统计数字增加"测试
|
|
|
|
|
+ - [x] 4.3 验证统计数字与后台实际分配人数一致
|
|
|
|
|
+
|
|
|
|
|
+- [x] 任务 5: 实现数据刷新时效性测试 (AC: #4)
|
|
|
|
|
+ - [x] 5.1 实现轮询等待机制
|
|
|
|
|
+ - [x] 5.2 验证正常同步时间(≤ 3 秒)
|
|
|
|
|
+ - [x] 5.3 验证下拉刷新功能
|
|
|
|
|
+
|
|
|
|
|
+- [x] 任务 6: 实现测试数据清理策略 (AC: #1)
|
|
|
|
|
+ - [x] 6.1 添加 afterEach 钩子清理分配关系数据
|
|
|
|
|
+ - [x] 6.2 验证清理后首页看板不再显示该人才
|
|
|
|
|
|
|
|
- [x] 任务 7: 后端实现 - 获取分配人才列表 API (AC: #1, #3)
|
|
- [x] 任务 7: 后端实现 - 获取分配人才列表 API (AC: #1, #3)
|
|
|
- [x] 7.1 创建获取企业分配人才列表的 API 端点
|
|
- [x] 7.1 创建获取企业分配人才列表的 API 端点
|
|
@@ -122,10 +122,10 @@ Status: ready-for-dev
|
|
|
- [x] 9.5 实现下拉刷新功能触发数据重新获取
|
|
- [x] 9.5 实现下拉刷新功能触发数据重新获取
|
|
|
- [x] 9.6 添加加载状态和错误处理
|
|
- [x] 9.6 添加加载状态和错误处理
|
|
|
|
|
|
|
|
-- [ ] 任务 10: 验证代码质量 (AC: #6)
|
|
|
|
|
- - [ ] 10.1 运行 `pnpm typecheck` 验证类型检查
|
|
|
|
|
- - [ ] 10.2 运行测试确保所有测试通过
|
|
|
|
|
- - [ ] 10.3 验证选择器使用 data-testid
|
|
|
|
|
|
|
+- [x] 任务 10: 验证代码质量 (AC: #6)
|
|
|
|
|
+ - [x] 10.1 运行 `pnpm typecheck` 验证类型检查
|
|
|
|
|
+ - [x] 10.2 运行测试确保所有测试通过
|
|
|
|
|
+ - [x] 10.3 验证选择器使用 data-testid
|
|
|
|
|
|
|
|
## Dev Notes
|
|
## Dev Notes
|
|
|
|
|
|
|
@@ -765,13 +765,33 @@ _2026-01-14: Tasks 7, 8, 9 implementation completed_
|
|
|
- `company-module` 类型检查通过
|
|
- `company-module` 类型检查通过
|
|
|
- `yongren-dashboard-ui` 类型检查通过
|
|
- `yongren-dashboard-ui` 类型检查通过
|
|
|
|
|
|
|
|
|
|
+4. **E2E 测试实现**(任务 1-6):
|
|
|
|
|
+ - 创建 `web/tests/e2e/specs/cross-platform/dashboard-sync.spec.ts`
|
|
|
|
|
+ - 测试场景:
|
|
|
|
|
+ - 后台添加人员到订单 → 验证首页显示人才卡片
|
|
|
|
|
+ - 核心统计数字同步验证
|
|
|
|
|
+ - 数据刷新时效性验证
|
|
|
|
|
+ - 测试结果:4 个测试全部通过
|
|
|
|
|
+ - 修复的问题:
|
|
|
|
|
+ - Hash 路由 URL 等待条件(使用 `url.hash` 而不是 `url.pathname`)
|
|
|
|
|
+ - Strict mode violation(使用 `.first()` 处理多个匹配元素)
|
|
|
|
|
+
|
|
|
|
|
+5. **测试验证结果**:
|
|
|
|
|
+ - 后台添加人员:✅ 成功
|
|
|
|
|
+ - 首页显示人才卡片:✅ 验证通过
|
|
|
|
|
+ - 人才信息完整性:✅ 姓名、残疾类型、等级、状态正确显示
|
|
|
|
|
+ - 核心统计数字:✅ 在职人员、待入职、本月新增正确显示
|
|
|
|
|
+ - 数据刷新时效:✅ 加载时间 1.1s,刷新时间 0.7s
|
|
|
|
|
+
|
|
|
### File List
|
|
### File List
|
|
|
|
|
|
|
|
_Modified files:_
|
|
_Modified files:_
|
|
|
- `/mnt/code/188-179-template-6/allin-packages/company-module/src/schemas/company-statistics.schema.ts`
|
|
- `/mnt/code/188-179-template-6/allin-packages/company-module/src/schemas/company-statistics.schema.ts`
|
|
|
- `/mnt/code/188-179-template-6/allin-packages/company-module/src/services/company.service.ts`
|
|
- `/mnt/code/188-179-template-6/allin-packages/company-module/src/services/company.service.ts`
|
|
|
- `/mnt/code/188-179-template-6/mini-ui-packages/yongren-dashboard-ui/src/pages/Dashboard/Dashboard.tsx`
|
|
- `/mnt/code/188-179-template-6/mini-ui-packages/yongren-dashboard-ui/src/pages/Dashboard/Dashboard.tsx`
|
|
|
|
|
+- `/mnt/code/188-179-template-6/web/tests/e2e/specs/cross-platform/dashboard-sync.spec.ts`
|
|
|
- `/mnt/code/188-179-template-6/_bmad-output/implementation-artifacts/13-6-dashboard-sync.md`
|
|
- `/mnt/code/188-179-template-6/_bmad-output/implementation-artifacts/13-6-dashboard-sync.md`
|
|
|
|
|
+- `/mnt/code/188-179-template-6/_bmad-output/implementation-artifacts/sprint-status.yaml`
|
|
|
|
|
|
|
|
## Change Log
|
|
## Change Log
|
|
|
|
|
|
|
@@ -800,6 +820,18 @@ _Modified files:_
|
|
|
- 更新功能实现状态表(AC1-AC4 标记为需要实现)
|
|
- 更新功能实现状态表(AC1-AC4 标记为需要实现)
|
|
|
- 状态:blocked(等待功能实现)
|
|
- 状态:blocked(等待功能实现)
|
|
|
|
|
|
|
|
|
|
+- 2026-01-14: Story 13.6 完成
|
|
|
|
|
+ - 后端 API 实现完成(任务 7、8)
|
|
|
|
|
+ - 前端 dashboard 实现完成(任务 9)
|
|
|
|
|
+ - E2E 测试实现完成(任务 1-6)
|
|
|
|
|
+ - 所有 4 个测试通过:
|
|
|
|
|
+ - 后台添加人员到订单 (10.0s)
|
|
|
|
|
+ - 小程序验证首页看板人才数据同步 (3.6s)
|
|
|
|
|
+ - 核心统计数字同步验证 (2.3s)
|
|
|
|
|
+ - 数据刷新时效性验证 (2.0s)
|
|
|
|
|
+ - 代码质量验证完成(任务 10)
|
|
|
|
|
+ - 状态:done
|
|
|
|
|
+
|
|
|
---
|
|
---
|
|
|
|
|
|
|
|
## Playwright MCP 探索结果记录
|
|
## Playwright MCP 探索结果记录
|