- 移除 getTeacherCourses 中的 page 和 pageSize 参数 - 后端 API 验证导致这些参数被拒绝 - 添加功能测试计划和问题诊断文档 测试结果: - 后端 API 不接受 page/pageSize 参数 - 需要统一错误处理逻辑 (error.response?.data?.message → error.message) - Dashboard 组件有渲染错误需要修复 相关文档: - docs/test-logs/teacher/2026-03-12-functional-test-plan.md - docs/test-logs/teacher/2026-03-12-issue-diagnosis.md Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
181 lines
3.7 KiB
Markdown
181 lines
3.7 KiB
Markdown
# 功能测试计划 - 2026-03-12
|
||
|
||
## 测试目标
|
||
|
||
验证教师端核心业务流程和数据加载是否正常工作。
|
||
|
||
## 测试环境
|
||
|
||
- **后端**: http://localhost:3000 (NestJS)
|
||
- **前端**: http://localhost:5175 (Vite)
|
||
- **测试账号**: teacher1 / 123456
|
||
|
||
---
|
||
|
||
## 核心业务流程测试
|
||
|
||
### 流程 1: 教师端控制台
|
||
|
||
**测试步骤:**
|
||
1. 登录教师账号
|
||
2. 进入控制台首页
|
||
3. 检查统计数据(班级数、学生数、课程数、授课数)
|
||
4. 检查今日课程
|
||
5. 检查推荐课程
|
||
|
||
**预期结果:**
|
||
- 统计数据正常显示
|
||
- 今日课程列表有数据
|
||
- 推荐课程列表有数据
|
||
|
||
**API 检查:**
|
||
- `GET /api/v1/teacher/dashboard`
|
||
- `GET /api/v1/teacher/dashboard/today`
|
||
- `GET /api/v1/teacher/dashboard/recommend`
|
||
|
||
---
|
||
|
||
### 流程 2: 课程中心
|
||
|
||
**测试步骤:**
|
||
1. 进入课程中心 (`/teacher/courses`)
|
||
2. 检查课程列表
|
||
3. 筛选功能(年级、领域、关键词)
|
||
4. 点击课程进入详情页
|
||
5. 检查5个Tab(课程介绍、课程内容、排课参考、环创建设、用户评价)
|
||
|
||
**预期结果:**
|
||
- 课程列表显示正常
|
||
- 筛选功能正常
|
||
- 课程详情页5个Tab正常切换
|
||
- 课程内容Tab显示课程(导入课、集体课、领域课)
|
||
|
||
**API 检查:**
|
||
- `GET /api/v1/teacher/courses`
|
||
- `GET /api/v1/teacher/courses/{id}`
|
||
|
||
---
|
||
|
||
### 流程 3: 课程详情页
|
||
|
||
**测试步骤:**
|
||
1. 从课程列表点击某个课程
|
||
2. 进入课程详情页
|
||
3. 切换到"课程内容"Tab
|
||
4. 检查课程列表(导入课、集体课、领域课)
|
||
5. 点击"开始备课"按钮
|
||
|
||
**预期结果:**
|
||
- 课程详情正确显示
|
||
- 课程内容Tab显示课程列表
|
||
- 备课按钮可点击
|
||
|
||
**API 检查:**
|
||
- `GET /api/v1/teacher/courses/{id}`
|
||
|
||
---
|
||
|
||
### 流程 4: 备课模式
|
||
|
||
**测试步骤:**
|
||
1. 从课程详情页点击"开始备课"
|
||
2. 进入备课模式
|
||
3. 检查左侧导航(课程概览、课程列表)
|
||
4. 点击不同课程切换
|
||
5. 点击教学环节查看详情
|
||
|
||
**预期结果:**
|
||
- 备课模式页面正常显示
|
||
- 左侧导航可切换
|
||
- 课程内容正常显示
|
||
- 环节详情正常显示
|
||
|
||
**API 检查:**
|
||
- `GET /api/v1/teacher/courses/{courseId}/lessons`
|
||
|
||
---
|
||
|
||
### 流程 5: 校本课程包
|
||
|
||
**测试步骤:**
|
||
1. 进入校本课程页面 (`/teacher/school-courses`)
|
||
2. 检查校本课程列表
|
||
3. 点击某个校本课程查看详情
|
||
4. 检查课程内容
|
||
|
||
**预期结果:**
|
||
- 校本课程列表正常显示
|
||
- 校本课程详情正常显示
|
||
|
||
**API 检查:**
|
||
- `GET /api/v1/teacher/school-courses`
|
||
- `GET /api/v1/teacher/school-courses/{id}`
|
||
|
||
---
|
||
|
||
### 流程 6: 上课模式
|
||
|
||
**测试步骤:**
|
||
1. 进入上课记录页面 (`/teacher/lessons`)
|
||
2. 点击"开始上课"或选择班级上课
|
||
3. 检查上课界面
|
||
|
||
**预期结果:**
|
||
- 上课模式页面正常显示
|
||
- 环节切换正常
|
||
|
||
**API 检查:**
|
||
- `GET /api/v1/teacher/lessons`
|
||
- `POST /api/v1/teacher/lessons`
|
||
|
||
---
|
||
|
||
## 数据加载问题诊断
|
||
|
||
### 检查项目
|
||
|
||
| 项目 | 检查方法 | 预期结果 |
|
||
|------|---------|---------|
|
||
| API 响应格式 | 查看 Network 标签 | { code, message, data } 格式 |
|
||
| 响应拦截器 | 查看 Console | 无错误,数据正确解包 |
|
||
| 数据绑定 | 检查 Vue 组件 | data 响应式数据正确绑定 |
|
||
| 错误处理 | 检查 catch 块 | 错误信息正确显示 |
|
||
|
||
---
|
||
|
||
## 测试执行记录
|
||
|
||
### 测试时间: 2026-03-12 下午
|
||
|
||
#### 测试 1: 教师端控制台
|
||
|
||
**状态**: ⏳ 待测试
|
||
|
||
#### 测试 2: 课程中心
|
||
|
||
**状态**: ⏳ 待测试
|
||
|
||
#### 测试 3: 课程详情页
|
||
|
||
**状态**: ⏳ 待测试
|
||
|
||
#### 测试 4: 备课模式
|
||
|
||
**状态**: ⏳ 待测试
|
||
|
||
#### 测试 5: 校本课程包
|
||
|
||
**状态**: ⏳ 待测试
|
||
|
||
#### 测试 6: 上课模式
|
||
|
||
**状态**: ⏳ 待测试
|
||
|
||
---
|
||
|
||
## 问题记录
|
||
|
||
| 问题 | 严重程度 | 状态 | 解决方案 |
|
||
|------|---------|------|---------|
|
||
| | | | |
|