学校端排课功能完整测试报告
测试日期: 2026-03-17
测试人员: Claude Code
测试范围: 前端UI、后端API、端到端测试
一、测试环境
二、前端UI测试结果
2.1 登录流程 ✅
| 测试项 |
结果 |
说明 |
| 角色选择 |
✅ 通过 |
成功点击"学校"角色按钮 |
| 表单填写 |
✅ 通过 |
账号密码自动填充 |
| 登录跳转 |
✅ 通过 |
成功跳转到 /school/dashboard |
2.2 页面导航 ✅
| 测试项 |
结果 |
说明 |
| 访问排课页面 |
✅ 通过 |
/school/schedule 正常加载 |
| 页面标题 |
✅ 通过 |
显示"课程排期" |
| 新建排课按钮 |
✅ 通过 |
按钮存在并可点击 |
2.3 Tab导航切换 ✅
| Tab名称 |
结果 |
说明 |
| 列表视图 |
✅ 通过 |
表格正常显示,有数据 |
| 课表视图 |
✅ 通过 |
时间轴和星期列正确显示 |
| 日历视图 |
✅ 通过 |
月份和日期网格正常 |
2.4 新建排课弹窗 ✅
| 测试项 |
结果 |
说明 |
| 弹窗打开 |
✅ 通过 |
点击按钮后弹窗正常打开 |
| 两层结构 |
✅ 通过 |
课程套餐→课程包结构正确 |
两层结构验证:
课程套餐: 完整阅读能力培养套餐
└─ 课程包: 完整阅读能力培养套餐 (10门课程)
三、后端API测试结果
3.1 认证API ✅
| API |
状态码 |
说明 |
| POST /api/v1/auth/login |
200 |
Token正确返回 |
3.2 课程套餐API ✅
| API |
状态 |
数据量 |
| GET /api/v1/school/packages |
200 |
1个套餐 |
两层结构响应:
{
"id": "5",
"name": "完整阅读能力培养套餐",
"packageCount": 1,
"packages": [{
"name": "完整阅读能力培养套餐",
"courseCount": 10
}]
}
3.3 排课管理API ✅
| API |
状态码 |
数据量 |
| GET /api/v1/school/schedules |
200 |
9条记录 |
| GET /api/v1/school/schedules/timetable |
200 |
5条记录 |
| GET /api/v1/school/schedules/calendar |
200 |
日历数据 |
3.4 基础数据API ✅
| API |
状态码 |
数据量 |
| GET /api/v1/school/classes |
200 |
5个班级 |
| GET /api/v1/school/teachers |
200 |
10位教师 |
3.5 冲突检测API ✅ (已修复)
| API |
方法 |
状态码 |
说明 |
| /api/v1/school/schedules/check-conflict |
POST |
200 |
冲突检测正常工作 |
请求参数:
classId (必填): 班级ID
teacherId (可选): 教师ID
scheduledDate (必填): 排课日期 (格式: YYYY-MM-DD)
scheduledTime (必填): 时间段 (格式: HH:mm-HH:mm)
响应示例:
{
"code": 200,
"data": {
"hasConflict": false,
"conflicts": [],
"message": "无时间冲突"
}
}
四、问题汇总
4.1 已修复问题 ✅
| 问题描述 |
原因 |
解决方案 |
| 冲突检测API返回500错误 |
测试参数不正确 |
修正API请求参数 |
五、测试结论
功能完整性 ✅
- ✅ 排课页面访问正常
- ✅ Tab导航切换正常
- ✅ 三种视图都正常显示
- ✅ 新建排课弹窗正常
- ✅ 两层结构正确显示
后端稳定性 ✅
- ✅ 所有主要API正常工作
- ✅ 两层结构数据正确返回
- ✅ 冲突检测API正常工作
总体评价: 排课功能完整,前端UI与后端API联调正常,所有API测试通过。
六、测试截图
| 截图 |
描述 |
| schedule-page-test.png |
排课页面主视图 |
| schedule-列表-test.png |
列表视图 |
| schedule-课表-test.png |
课表视图 |
| schedule-日历-test.png |
日历视图 |
| schedule-create-modal-test.png |
新建排课弹窗 |
| schedule-dropdown-test.png |
课程套餐下拉框 |
七、测试命令
# 后端API测试
./test_all_apis.sh
# 前端浏览器测试
python3 test_schedule_page.py
报告生成时间: 2026-03-17
测试状态: ✅ 全部通过