团队作业5

Alpha 版本测试报告与发布说明

条目 内容
这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience
这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience/homework/13475
这个作业的目标 测试与发布

一、测试报告

1. 需求与范围

依据文档:

  • 需求与功能:docs/SRS.md
  • 功能说明与启动:README.md
  • 系统设计与测试计划(简化):docs/dev-guide.md

覆盖模块:

  • 预约:创建/冲突校验/审批/取消/签到签退/违规记录/解锁
  • 报修:提单/指派/状态流转/评论/权限
  • 鉴权与角色权限

2. 测试过程

  1. 需求与接口梳理:依据 SRS 与 README 列出核心路径与权限边界。
  2. 接口测试:Jest/Supertest 覆盖关键接口与分支。
  3. 场景测试:按“学生/管理员/维修”全流程手测。
  4. 复测与回归:修复后重跑自动化脚本与关键场景。

3. 测试结果概览

自动化测试:

  • npm test:PASS(3 tests, 1 suite)。
  • npm run day4:check:违规链路通过(超时未签到→违规→锁定→豁免→解锁)。
  • npm run day5:check:报修权限与状态流转通过。

手测场景:

  • 预约创建与冲突校验
  • 签到/签退与违规提示
  • 报修提单/指派/状态流转/评论
  • 角色越权提示

4. Bug 统计与分类

本次测试共发现 6 个 Bug,分类如下:

  • 功能/业务逻辑:3
  • 权限/流程:2
  • 测试用例不匹配:1

5. Bug 处置结果

  • 修复的 Bug:6
  • 不能重现:0
  • 产品设计如此(非 Bug):0
  • 不修复/不会修复:0
  • 延迟到下个版本:0

已修复问题清单(摘要)

  1. 预约违规未在列表刷新时体现 → 增加即时扫查逻辑。
  2. 超过宽限期仍可签到 → 限制签到窗口为开始时间至宽限期/结束时间。
  3. 宽限期与结束时间边界计算不合理 → 取二者最小值作为截止。
  4. 报修状态跳转允许越权/跳步 → 固化状态流转链路并校验。
  5. 指派对象可为非维修角色 → 限制为 maintenance 角色。
  6. 报修流程用例与新规则不一致 → 更新测试用例匹配新流程。

6. 场景测试(Scenario Testing)

预期用户与目标

  • 学生:创建预约、避免冲突、按时签到/签退、提交报修、查看处理进度与留言。
  • 管理员:审批预约、管理违规、指派维修、查看全量记录与状态。
  • 维修人员:处理被指派报修、推进状态到待确认。

功能如何组合满足需求

  • 预约冲突校验 + 状态审批/取消 → 保障资源唯一与可控审批。
  • 签到/违规记录 + 锁定/豁免 → 约束违规使用与可控解锁。
  • 报修提单 + 指派 + 状态流转 + 评论 → 形成报修闭环与可追踪沟通。

7. 测试矩阵(Test Matrix)

平台与环境:

  • OS:Windows 10/11
  • Node.js:18+
  • DB:SQLite(本地文件)
  • 前端:Vite + React

浏览器:

  • Chrome 120+
  • Edge 120+

8. Alpha 出口条件(Exit Criteria)

满足以下条件即可发布 Alpha:

  • 关键链路(预约/违规/报修)全部通过,且无阻塞级缺陷。
  • 核心权限校验生效,越权均返回 403。
  • 自动化脚本与单测全绿(npm testday4:checkday5:check)。
  • 文档包含启动说明、环境变量、已知问题与测试摘要。

二、Alpha 版本发布说明

1. 版本功能(新增/完善)

  • 预约:冲突校验、审批、取消、签到/签退、违规记录与锁定、管理员豁免解锁。
  • 报修:提单、指派维修、状态流转(pending→assigned→in_progress→awaiting_confirmation→completed)、评论留言。
  • 权限:学生/管理员/维修三角色区分与接口鉴权。

2. 本版本修复的缺陷(相对前一版本)

  • 违规未即时可见、签到窗口超时仍可签到等逻辑问题。
  • 报修状态跳转越权/跳步、指派对象角色不受限问题。
  • 自动化测试用例与新流程不一致问题。

3. 运行环境要求

  • Node.js 18+
  • Windows/macOS/Linux 任一(本地 SQLite 文件)
  • 浏览器:Chrome/Edge(推荐最新版)

4. 安装与启动方法

后端(默认 3001):

cd server
cp .env.example .env
npm install
npm run dev

前端(默认 5173):

cd client
npm install
npm run dev

默认账号:

  • 学生:student / 123456
  • 管理员:admin / admin123
  • 维修:maint / maint123

5. 已知问题与限制

  • 前端错误提示较简化,部分接口错误仅显示通用提示。
  • 截图需在本机补充到周报/博客(本环境无法直接截图)。

6. 发布方式与地址

posted @ 2026-01-24 18:59  何俊朗  阅读(4)  评论(0)    收藏  举报