Files
aurak/docs/assessment-screen-map.md
T
Developer 7674b6063f docs: 人才测评系统画面地图 — 7个画面/4个路由/10个测试脚本
画面清单:
1. 考核评估 /assessment — 答题/结果/证书/历史
2. 评估统计 /assessment-stats — 统计/雷达/趋势
3. 题库管理 /question-banks — 列表/详情/CRUD/AI生成/审核
4. 设置-测评模板 /settings — 模板/维度/P2配置

涵盖: 前端组件/后端API/路由/服务/测试脚本映射
发现: AssessmentStatsView + AssessmentTemplateManager 两个画面无测试覆盖

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 08:45:44 +08:00

11 KiB

人才测评系统 — 画面地图

版本: 2026-06-17
覆盖: 所有测评相关画面、功能模块、API 端点、测试脚本


一、画面全景

┌────────────────────────────────────────────────────────────────┐
│                     AuraK 人才测评系统画面                       │
├────────────────────────────────────────────────────────────────┤
│                                                                │
│  ┌──────────────┐  ┌──────────────┐  ┌──────────────────────┐ │
│  │  考核评估      │  │  评估统计     │  │  题库管理              │ │
│  │  /assessment  │  │  /stats      │  │  /question-banks      │ │
│  ├──────────────┤  ├──────────────┤  ├──────────────────────┤ │
│  │  答题交互画面  │  │  统计面板     │  │  题库列表              │ │
│  │  · MC选择     │  │  雷达图展示    │  │  题库详情/题目管理      │ │
│  │  · 简答输入   │  │  趋势图表     │  │  题目CRUD弹窗          │ │
│  │  · 追问流程   │  │  筛选区      │  │  AI生成弹窗             │ │
│  │  · 结果展示   │  │              │  │  审核流程               │ │
│  │  · 证书弹窗   │  │              │  │  创建题库抽屉            │ │
│  └──────────────┘  └──────────────┘  └──────────────────────┘ │
│                                                                │
│  ┌────────────────────────────────────────────────────────┐   │
│  │  系统设置 → 测评模板                                     │   │
│  │  /settings → Tab: assessment_templates                  │   │
│  ├────────────────────────────────────────────────────────┤   │
│  │  模板创建/编辑弹窗                                       │   │
│  │  维度配置(添加/删除/权重)                               │   │
│  │  基本设置(题数/时间/及格分/P2字段)                        │   │
│  └────────────────────────────────────────────────────────┘   │
│                                                                │
└────────────────────────────────────────────────────────────────┘

二、画面清单

2.1 考核评估 /assessment

画面 文件名 功能
考核首页 AssessmentView.tsx 选择模板 → 开始评估
答题交互 AssessmentView.tsx (renderAssessment) 选择题(选项按钮+确认)、简答题(textarea+发送)、追问流程
进度导航 AssessmentView.tsx 题序圆点(当前蓝/标记黄/其他灰) + 🏷️标记回头按钮
提交确认 AssessmentView.tsx (submitConfirm modal) 未答完时弹窗确认
结果展示 AssessmentView.tsx (renderCompletion) 等级、分数、每题详情、报告
证书弹窗 AssessmentView.tsx (cert modal) 等级、总分、维度得分、题目列表
历史侧栏 AssessmentView.tsx (右栏) 考评历史列表
答题回顾 AssessmentView.tsx (review button) reviewMode开启时查看答案+解析

组件文件: web/components/views/AssessmentView.tsx
页面入口: web/src/pages/workspace/AssessmentPage.tsx
路由: Route path="assessment"
服务: web/services/assessmentService.ts

2.2 评估统计 /assessment-stats

画面 文件名 功能
统计面板 AssessmentStatsView.tsx 通过率、平均分、最高/最低分
雷达图 AssessmentStatsView.tsx 各维度平均分
趋势图 AssessmentStatsView.tsx 分数趋势
筛选区 AssessmentStatsView.tsx 时间/模板/组织筛选

组件文件: web/components/views/AssessmentStatsView.tsx
路由: Route path="assessment-stats"

2.3 题库管理 /question-banks

画面 文件名 功能
题库列表 QuestionBankView.tsx 题库卡片列表/搜索/筛选Tab(全部/已发布/草稿/待审核)
创建题库抽屉 QuestionBankView.tsx (drawer) 名称/描述/模板选择 → 创建提交
题库详情 QuestionBankDetailView.tsx 题库信息/状态/统计/题目列表
题目卡片 QuestionBankDetailView.tsx 题型/难度/维度/状态标签 + hover操作按钮
添加/编辑题目弹窗 QuestionBankDetailView.tsx 题干/类型/难度/维度/评分要点
AI生成弹窗 QuestionBankDetailView.tsx 生成数量设置 → AI出题
批量审核 QuestionBankDetailView.tsx 全选/单题通过驳回/批量通过驳回
提交审核 QuestionBankDetailView.tsx 题库状态 DRAFT→PENDING_REVIEW
发布 QuestionBankDetailView.tsx PENDING_REVIEW→PUBLISHED

组件文件: web/components/views/QuestionBankView.tsx, web/components/views/QuestionBankDetailView.tsx
路由: Route path="question-banks", Route path="question-banks/:id"
服务: web/services/questionBankService.ts

2.4 设置 → 测评模板 /settings (Tab: assessment_templates)

画面 文件名 功能
模板列表 SettingsView.tsx + AssessmentTemplateManager.tsx 所有模板列表
创建/编辑模板弹窗 AssessmentTemplateManager.tsx 名称/描述/题数/时间/及格分
维度配置 AssessmentTemplateManager.tsx 添加/删除维度 + 权重
P2配置 AssessmentTemplateManager.tsx attemptLimit/reviewMode/shuffleQuestions/预约时段

组件文件: web/components/views/AssessmentTemplateManager.tsx
路由: Route path="settings" (Tab: assessment_templates)
服务: web/services/templateService.ts


三、画面关系图

侧栏导航
  │
  ├── 考核评估 ─────── AssessmentView
  │                     ├── 答题交互 (MC/SA/追问)
  │                     ├── 结果展示 (+ 证书弹窗)
  │                     └── 历史侧栏
  │
  ├── 评估统计 ─────── AssessmentStatsView
  │                     ├── 统计面板
  │                     ├── 雷达图
  │                     └── 趋势图
  │
  ├── 题库管理 ─────── QuestionBankView ──→ QuestionBankDetailView
  │                     │                     ├── 题目列表 (CRUD)
  │                     │                     ├── AI生成弹窗
  │                     │                     └── 审核流程
  │                     └── 创建题库抽屉
  │
  └── 系统设置 ─────── SettingsView
                        └── 测评模板 Tab ── AssessmentTemplateManager
                                             ├── 模板列表
                                             └── 创建/编辑弹窗
                                                  └── 维度配置

四、后端 API 端点对照

前端画面 后端 API Controller
考核进行 POST /assessment/startGET /assessment/:id/statePOST /assessment/:id/answer assessment.controller.ts
证书 GET /assessment/:id/certificate assessment.controller.ts
回顾 GET /assessment/:id/review assessment.controller.ts
历史 GET /assessment/history assessment.controller.ts
统计 GET /assessment/stats assessment.controller.ts
模板CRUD POST/GET/PUT/DELETE /assessment/templates template.controller.ts
题库CRUD POST/GET/PUT/DELETE /question-banks question-bank.controller.ts
题目CRUD POST/GET/PUT/DELETE /question-banks/:bankId/items question-bank.controller.ts
AI生成 POST /question-banks/:id/generate question-bank.controller.ts
审核 POST /question-banks/:id/items/batch-review question-bank.controller.ts

五、已存在测试脚本

测试文件 覆盖画面 项数 通过率
tests/assessment.e2e.spec.ts 考核评估 UI 8 100%
tests/full-assessment.e2e.spec.ts 考核全流程(API+UI) 18 83% (1 flaky)
tests/question-bank.e2e.spec.ts 题库管理全按钮 33 100%
test-assessment-smoke.mjs 烟雾测试(全模块) 29 100%
test-e2e-assessment-full-flow.mjs 端到端全流程 29 100%
test-p2-advanced.mjs P2高级功能 20 100%
test-concurrent-assessments.mjs 并发考核 20人
test-multiround.mjs 多轮对话
test-question-distribution.mjs 出题分布
exam-organizer.mjs 考试组织场景

六、未测试画面

画面 组件 测试覆盖 风险
评估统计 /assessment-stats AssessmentStatsView.tsx 无测试 🔴 统计面板/雷达图/趋势图
设置→测评模板 Tab AssessmentTemplateManager.tsx 无单独测试 🟡 维度配置/P2字段/模板CRUD

待补充测试: AssessmentStatsViewAssessmentTemplateManager 两个画面还未覆盖。


七、技术栈

技术 文件行数
前端画面 React 19 + TypeScript + Tailwind CSS v4 ~6,000 行
后端 API NestJS 11 + TypeORM ~3,500 行
测试 Playwright 1.61.0 ~3,800 行

前端组件总行数:

  • AssessmentView.tsx — ~1,100 行 (最大)
  • QuestionBankDetailView.tsx — ~530 行
  • QuestionBankView.tsx — ~380 行
  • SettingsView.tsx(测评部分) — ~200 行
  • AssessmentStatsView.tsx — ~? (待读)
  • AssessmentTemplateManager.tsx — ~540 行

下一步建议: 补充评估统计画面 + 测评模板配置画面 的 Playwright 全按钮测试。