- 描述: 验证系统内部逻辑和实现的正确性,确保代码在各种输入情况下能正确执行。
- 预期成果: 发现并修复代码中的缺陷,确保代码质量和性能达到预期要求。
-
包含的代码模块
- 创建 Fastify 实例模块
- 获取个人成绩信息模块
- 获取课程与能力对应矩阵模块
- 获取个人能力数据模块
- 获取年级能力数据模块
- 获取个人就业去向预测数据模块
- 测试方法: 白盒测试
- 测试技术: 代码审查、单元测试、静态分析、代码覆盖率分析、路径测试
-
硬件
- PC: Windows 10, 8GB RAM, i5处理器
-
软件
- 编译器: GCC, Clang
- IDE: Visual Studio Code
- 网络: 无特定网络需求
| 活动 | 开始日期 | 结束日期 |
|---|---|---|
| 代码审查 | 2024-05-27 | 2024-05-27 |
| 单元测试用例设计 | 2024-05-27 | 2024-05-28 |
| 测试环境搭建 | 2024-05-28 | 2024-05-29 |
| 单元测试执行 | 2024-05-29 | 2024-05-30 |
| 测试总结和报告编写 | 2024-06-01 | 2024-06-01 |
-
测试人员
- 李凯
- 陈建钢
- 张志雄
-
风险
- 代码复杂度高,可能导致测试覆盖率不足
- 测试环境配置不当可能影响测试结果
-
假设
- 开发团队及时提供代码和技术支持
-
所有功能模块在测试期间不进行大的改动
-
- 测试用例名称: 测试创建 Fastify 实例
- 测试描述: 测试是否成功创建 Fastify 实例并注册相关插件。
- 前置条件: 无
- 测试数据: 无
- 测试步骤:
- 执行代码创建 Fastify 实例并注册相关插件。
- 预期结果: 成功创建 Fastify 实例并注册相关插件。
- 实际结果: Fastify 实例成功创建并注册相关插件。
- 备注: 无
- 测试用例名称: 测试获取个人成绩信息(正常情况和无效情况)
- 测试描述: 测试是否能够成功获取个人成绩信息,并能够正确处理无效的学生ID。
- 前置条件: 无
- 测试数据:
- 学生ID(有效): "12345"
- 学生ID(无效): "99999"
- 测试步骤:
- 发送包含有效学生ID的 POST 请求到
/score_management/score端点。 - 发送包含无效学生ID的 POST 请求到
/score_management/score端点。
- 发送包含有效学生ID的 POST 请求到
- 预期结果:
- 对于有效学生ID,返回个人成绩信息。
- 对于无效学生ID,返回空数据。
- 实际结果:
- 对于有效学生ID,返回个人成绩信息。
- 对于无效学生ID,返回空数据。
- 备注: 无
- 测试用例名称: 测试获取课程与能力对应矩阵
- 测试描述: 测试是否能够成功获取课程与能力对应矩阵。
- 前置条件: 无
- 测试数据: 无
- 测试步骤:
- 发送 GET 请求到
/course_management/course端点。
- 发送 GET 请求到
- 预期结果: 返回课程与能力对应矩阵数据。
- 实际结果: 返回了课程与能力对应矩阵数据。
- 备注: 无
- 测试用例名称: 测试获取个人能力数据(正常情况和无效情况)
- 测试描述: 测试是否能够成功获取个人能力数据,并能够正确处理无效的学生ID。
- 前置条件: 无
- 测试数据:
- 学生ID(有效): "12345"
- 学生ID(无效): "99999"
- 测试步骤:
- 发送包含有效学生ID的 POST 请求到
/employment_management/ability_evaluation/personal_ability端点。 - 发送包含无效学生ID的 POST 请求到
/employment_management/ability_evaluation/personal_ability端点。
- 发送包含有效学生ID的 POST 请求到
- 预期结果:
- 对于有效学生ID,返回个人能力数据。
- 对于无效学生ID,返回空数据。
- 实际结果:
- 对于有效学生ID,返回个人能力数据。
- 对于无效学生ID,返回空数据。
- 备注: 无
- 测试用例名称: 测试获取年级能力数据
- 测试描述: 测试是否能够成功获取年级能力数据,并能够正确处理无效的年份。
- 前置条件: 无
- 测试数据:
- 学生ID: "12345"
- 有效年份: 2023
- 无效年份: 2050
- 测试步骤:
- 发送包含有效年份的 POST 请求到
/employment_management/ability_evaluation/yearly_ability端点。 - 发送包含无效年份的 POST 请求到
/employment_management/ability_evaluation/yearly_ability端点。
- 发送包含有效年份的 POST 请求到
- 预期结果:
- 对于有效年份,返回年级能力数据。
- 对于无效年份,返回空数据。
- 实际结果:
- 对于有效年份,返回年级能力数据。
- 对于无效年份,返回空数据。
- 备注: 无
- 测试用例名称: 测试获取个人就业去向预测数据
- 测试描述: 测试是否能够成功获取个人就业去向预测数据,并能够正确处理无效的学生ID。
- 前置条件: 无
- 测试数据:
- 学生ID(有效): "12345"
- 学生ID(无效): "99999"
- 测试步骤:
- 发送包含有效学生ID的 POST 请求到
/employment_management/employment_prediction/employment端点。 - 发送包含无效学生ID的 POST 请求到
/employment_management/employment_prediction/employment端点。
- 发送包含有效学生ID的 POST 请求到
- 预期结果:
- 对于有效学生ID,返回个人就业去向预测数据。
- 对于无效学生ID,返回空数据。
- 实际结果:
- 对于有效学生ID,返回个人就业去向预测数据。
- 对于无效学生ID,返回空数据。
- 备注: 无
- 测试用例名称: 测试实时评估和预测功能
- 测试描述: 验证系统能够接收上传的 PDF 文件,并通过 Python 脚本实时对文件进行评估和预测。
- 前置条件: 无
- 测试数据:
- 待上传的 PDF 文件
- 测试步骤:
- 将包含有效数据的 PDF 文件上传到系统。
- 检查系统是否成功接收并保存文件。
- 检查系统是否调用了 Python 脚本,并传递了正确的文件路径。
- 检查系统是否能够正确解析 Python 脚本返回的 JSON 数据。
- 预期结果
- 系统应该成功接收并处理 PDF 文件,然后返回正确的评估和预测结果。
- 实际结果
- 系统成功处理了 PDF 文件,并返回了正确的评估和预测结果。
- 备注: 无
-
- 测试用例名称: 测试清空数据库
- 测试描述: 验证系统能够成功清空数据库中的所有数据。
- 前置条件: 数据库中有数据
- 测试数据: 无
- 测试步骤:
- 发送请求
/data_management/delete_all。
- 发送请求
- 预期结果
- 系统应该成功清空数据库,并返回正确的成功消息。
- 实际结果
- 系统成功清空了数据库,并返回了正确的成功消息。
- 备注: 无
-
-
测试用例名称: 测试数据库初始化和数据分析
-
测试描述: 验证系统能够正确执行数据库初始化和数据分析流程。
-
前置条件: 无
-
测试数据: 无
-
测试步骤:
- 发送请求
/data_management/init。
- 发送请求
-
预期结果:
- 系统应该成功执行数据库初始化和数据分析流程,并返回正确的成功消息。
-
实际结果:
- 系统成功执行了数据库初始化和数据分析流程,并返回了正确的成功消息。
-
备注: 无
-
列出所有测试用例的编号和名称,方便快速查找和跟踪。
| 用例编号 | 用例名称 |
|---|---|
| UC_001 | 测试创建 Fastify 实例模块 |
| UC_002 | 测试获取个人成绩信息模块 |
| UC_003 | 测试获取课程与能力对应矩阵模块 |
| UC_004 | 测试获取个人能力数据模块 |
| UC_005 | 测试获取年级能力数据模块 |
| UC_006 | 测试获取个人就业去向预测数据模块 |
| UC_007 | 测试实时评估和预测功能模块 |
| UC_008 | 测试清空数据库模块 |
| UC_009 | 测试数据库初始化和数据分析模块 |
记录每次测试的执行情况,包括执行时间、执行人、结果和备注。
| 用例编号 | 执行时间 | 执行人 | 结果 | 备注 |
|---|---|---|---|---|
| UC_001 | 2024-05-27 | 李凯 | 通过 | 无 |
| UC_002 | 2024-05-28 | 李凯 | 通过 | 无 |
| UC_003 | 2024-05-29 | 李凯 | 通过 | 无 |
| UC_004 | 2024-05-30 | 李凯 | 通过 | 无 |
| UC_005 | 2024-05-31 | 李凯 | 通过 | 无 |
| UC_006 | 2024-06-01 | 李凯 | 通过 | 无 |
| UC_007 | 2024-06-01 | 李凯 | 通过 | 无 |
| UC_008 | 2024-06-01 | 李凯 | 通过 | 无 |
| UC_009 | 2024-06-01 | 李凯 | 通过 | 无 |
记录发现的缺陷,包括缺陷编号、描述、严重程度、状态等信息。
| 缺陷编号 | 描述 | 严重程度 | 状态 | 备注 |
|---|---|---|---|---|
| DEF_001 | API接口返回错误代码 | 高 | 已提交 | 无 |
| DEF_002 | 数据处理函数边界值处理错误 | 中 | 已提交 | 无 |
- 执行所有测试用例,确保覆盖了所有功能点和边界情况。
- 生成详细的测试报告,包括每个测试用例的执行结果、覆盖率等信息。
- 对于每个功能点,根据测试用例的执行结果,记录是否通过测试,如果未通过测试,记录失败的原因和相应的修复建议。