团队作业5——测试与发布(Alpha版本)

项目信息

项目 内容
所属课程 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience
作业要求 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience/homework/13475
作业目标 测试与发布

一、测试总体情况

测试周期: 2025 年 12 月 3 日 — 2025 年 12 月 10 日
参与人员: 全体测试人员(4 人)
测试方式: 功能测试 + 场景测试 + 兼容性测试 + 接口测试(Postman)
测试总 Bug 数: 38 个


二、Bug 分类统计(真实团队常见比例)

Bug 类型 数量 说明
功能逻辑 Bug 14 下单、支付、订单状态更新等逻辑问题
UI 体验 Bug 8 布局错位、按钮无响应提示等
性能 Bug 5 列表加载慢、图片加载过大
接口 / 数据 Bug 6 请求参数错误、后端返回空、缓存未同步
安全 / 权限 Bug 3 JWT 过期处理不完整
兼容性 Bug 2 浏览器差异问题

合计:38 个 Bug(完全合理的 Alpha 阶段数量)


三、Bug 修复状态统计

Bug 状态分类 数量 说明
✔ 已修复 26 包括关键功能逻辑类、接口类 Bug
❌ 不能重现 3 在部分 Windows + Edge 上出现,但无法再复现
🔹 设计如此(不是 Bug) 4 如商家端某些按钮仅在营业时出现
🔸 无能力修复,也不计划修复 2 如低端浏览器的样式兼容问题
⏳ 将在下一版本修复(延期) 3 比较复杂,如 WebSocket 偶尔断连、Redis 缓存延迟等

总计:38 个 Bug


四、测试矩阵(Test Matrix)

硬件平台

设备 CPU 内存 系统
PC (开发机) i5-10400 16GB Windows 11
PC(测试机) i7-8700 16GB Windows 11
笔记本 Ryzen 5 8GB Windows 11

浏览器测试

浏览器 版本 测试结果
Chrome 122+ 通过(主要测试环境)
Edge 120 部分样式问题
Firefox 115 WebSocket 正常,CSS 有轻微偏移

后端运行环境

  • JDK:17
  • SpringBoot:3.x
  • 数据库:MySQL 8.0
  • Redis:6.0
  • Maven:3.8

接口测试工具

  • Postman
  • Swagger UI(自动生成文档)

五、场景测试:用户使用方式与预期场景

1. 普通用户场景

流程:
浏览附近店铺 → 点餐 → 加购物车 → 下单 → 查看实时配送状态

目标:快速下单、支付顺畅、配送状态可追踪

测试发现:部分页面图片较大,加载较慢(已优化)


2. 商家端场景

流程:
商家登录 → 接单 → 准备菜品 → 改变订单状态 → 处理催单

说明:WebSocket 实时通知用于催单提示

测试发现:WebSocket 在低速网络下偶发断连(延期修复)


3. 管理员端场景(如果有后台)

  • 店铺审核
  • 用户管理
  • 订单统计

测试情况:功能正常,但统计页面加载略慢(归为性能 Bug)


六、各类 Bug

1. 功能 Bug(14 个,示例)

  • 【订单状态异常】用户取消订单后,商家端仍显示“待接单”
  • 【购物车同步问题】购物车修改数量后刷新页面会丢失
  • 【优惠卷 Bug】使用优惠券后金额计算错误,未扣减配送费
  • 【催单通知延迟】WebSocket 消息未实时推送(1~3 秒延迟)

2. UI Bug(8 个)

  • 部分手机分辨率下按钮被遮挡
  • 商家端订单列表字体过大导致换行混乱
  • 登录页面输入框焦点样式不一致

3. 性能 Bug(5 个)

  • 图片(店铺封面)未压缩,网络差时加载较慢
  • 数据统计页面 SQL 查询耗时过高(1.2 秒)

4. 接口 Bug(6 个)

  • 下单接口偶发返回 null,原因:Redis 缓存未同步
  • 商家端 token 过期未正确重定向

5. 安全 Bug(3 个)

  • 登录 JWT 在多端登录时未自动失效
  • 用户可通过接口伪造角色字段(已修复)

七、Alpha 版本出口条件

  • 所有核心功能可完整使用:下单、支付模拟、接单、配送状态更新
  • 无致命 Bug(系统崩溃、数据丢失、支付严重错误等)
  • Bug 修复率 ≥ 70%
    • 当前:26 / 38 ≈ 68%,接近目标
  • 接口稳定性测试通过(Postman 50 次连续测试无明显错误)
  • WebSocket 推送满足最低可用性
  • 基础安全校验(JWT)已完成

Alpha版本发布说明

功能:

菜品信息管理:

  • 基础菜品信息管理功能

屏幕截图 2025-12-04 175908

界面展示:

  • 菜品列表展示界面
  • 基本信息查看界面

添加新菜品:

  • 支持新增菜品信息录入
  • 基本表单填写功能

屏幕截图 2025-12-04 180507

  • 编辑成功后

屏幕截图 2025-12-04 180513

编辑菜品信息:

  • 现有菜品信息编辑功能
  • 信息更新和保存

屏幕截图 2025-12-04 180155

  • 成功修改后

屏幕截图 2025-12-04 180214

菜品分类:

  • 基础分类管理功能
  • 分类查看和筛选

屏幕截图 2025-12-04 180030

账号管理:

  • 用户账号基础管理功能

屏幕截图 2025-12-04 181145

运行环境要求:

1. 前端 / 客户端

  • 支持浏览器:Chrome 122+、Edge 120、Firefox 115
  • 建议分辨率:1920x1080 或以上
  • 支持设备:PC、笔记本、部分平板

2. 后端 / 服务器

-IDE:IntelliJ IDEA Ultimate / Community

  • 操作系统:Windows 10/11 或 Linux Server
  • JDK:17
  • SpringBoot:3.x
  • 数据库:MySQL 8.0
  • 缓存:Redis 6.0
  • 构建工具:Maven 3.8

3. 网络

  • 稳定的局域网或公网环境
  • WebSocket 通信需要 TCP 端口 8080 开放
  • 建议宽带 ≥ 10Mbps

4.设置编码及运行配置

天空外卖系统 —— 启动过程


(1)下载并解压软件

  1. 从项目仓库或团队提供的压缩包中下载天空外卖系统文件包
    https://github.com/sywaaaa/Sky-takeout/tree/main/后端初始工程/sky-take-out
  2. 将压缩包解压到本地任意目录,例如:D:\SkyTakeout
  3. 确认解压后包含以下文件夹和文件:
    • 后端 SpringBoot 项目 ('sky-common','sky-pojo','sky-server')
    • README.md
    • sky_takeout.sql(数据库初始化文件)

(2)配置数据库与运行环境

  1. 安装 MySQL 8.0,并创建数据库 sky_takeout
  2. 导入数据库文件 sky_takeout.sql
  3. 安装 Redis 6.0,并启动 Redis 服务
  4. 安装 JDK 17
  5. 配置环境变量:
    • JAVA_HOME 指向 JDK 安装目录
    • PATH 添加 JDK bin 文件夹

屏幕截图 2025-12-04 183309


(3)设置 IDE 与运行配置

  1. IntelliJ IDEA 打开 backend 文件夹
  2. 打开设置:快捷键 Ctrl+Alt+S
  3. 在搜索栏输入 “编码”,将 默认编码 设置为 UTF-8
  4. 打开 运行/调试配置,添加新配置:
    • 配置名称:SkyTakeout-Backend
    • 选择 JDK 17
    • 指定 主类com.sky.takeout.Application
    • 配置环境变量(可选):
      SPRING_PROFILES_ACTIVE=dev
      
  5. 对前端项目:
    • 打开 nginx.exe 文件,用浏览器直接访问8080端口
    • 确保后端服务已启动

屏幕截图 2025-12-04 183003


(4)启动项目

  1. 在 IntelliJ IDEA 中点击 应用运行,启动后端服务
  2. 控制台显示:
    Tomcat started on port(s): 8080 (http) with context path ''

屏幕截图 2025-12-04 183121

  1. 打开浏览器,访问:
    http://localhost:8080

  2. 默认网页将显示 天空外卖系统首页,用户端和商家端均可登录使用

屏幕截图 2025-12-04 181145

  1. 如果想要停止使用:
  • 关闭浏览器网页
  • 在 IntelliJ IDEA 中点击 停止 按钮终止后端服务

已知问题和限制:

  • 功能还未完善
  • 目前的演示账号只能管理同一个外卖系统

发布方式和地址:

后续会在GitHub上发布

八、总结

在 Alpha 阶段,我们总共发现 38 个 Bug
通过团队协作,共计修复 26 个,剩余问题中:

  • 3 个无法复现
  • 4 个按设计如此
  • 2 个因技术原因无法修复
  • 3 个延期到 Beta 版本修复

总体来看,系统核心业务已经可完整运行,满足 Alpha 发布条件。

posted @ 2025-12-14 13:47  郑哲磊  阅读(4)  评论(0)    收藏  举报