团队作业5——测试与发布(Alpha版本)
团队作业5——测试与发布(Alpha版本)
| 这个作业属于哪个课程 | 班级链接 |
|---|---|
| 这个作业的要求在哪里 | 作业要求 |
一、Alpha版本测试报告
在为期 7 天的 Sprint 冲刺中,我们完成了从基础架构搭建到多角色(个人/高校/企业)下单业务的完整闭环。基于项目需求文档与测试计划,测试组对系统进行了全面的功能与回归测试。
1. 🖥️ 测试环境配置
| 测试项 | 配置说明 |
|---|---|
| 客户端 | 微信开发者工具 iPhone 14 Pro(iOS 16) 华为 Mate 40(Android 12) 微信小程序真机 |
| 服务端 | Spring Boot 3 + JDK 17 MySQL 8.0(阿里云 RDS) Redis |
| 测试工具 | JUnit5 Postman IntelliJ HTTP Client |
| 网络环境 | WIFI、4G/5G、高延迟弱网模拟 |
2. 🔄 测试过程与方法概述
| 测试阶段 | 测试类型 | 测试对象/工具 | 重点验证内容与执行情况 |
|---|---|---|---|
| 单元测试 (Unit Test) |
⚪ 白盒 | JwtUtil PriceService SnowflakeId |
✅ 计价算法:验证教材“九成新”折旧系数及企业“废纸”上浮 20% 逻辑。 ✅ 并发 ID:验证雪花算法在高并发下 ID 生成的唯一性。 |
| 接口测试 (API Test) |
🔘 灰盒 | .http 脚本 Postman |
✅ 企业链路:登录 -> Token 获取 -> 提交批量订单(含发票 JSON)。 ✅ 高校链路:验证 campus_type 字段与宿舍多品类数据的落库。 |
| 系统测试 (System Test) |
⚫ 黑盒 | 真机操作 用户模拟 |
✅ UI 交互:验证身份切换时表单的动态变化。 ✅ 异常处理:断网重连、Token 过期自动跳转、输入非法字符拦截。 |
3. 📈主要功能模块测试详情
| 核心模块 | 用例数 | 通过数 | ❌ 失败/修复数 | 结果状态 | 发现的主要缺陷 (Bug) 及修复 |
|---|---|---|---|---|---|
| 用户认证 | 8 | 8 | 1 (已修) | ✅ 通过 | 修复了 Mock 模式下企业测试账号 ID 偶尔冲突的问题。 |
| 地址管理 | 12 | 12 | 1 (已修) | ✅ 通过 | 修复了 MyBatis-Plus 逻辑删除 (deleted=1) 未生效,导致查出脏数据的问题。 |
| 个人下单 | 10 | 10 | 0 | ✅ 通过 | 地图选点坐标解析正确,基础下单流程顺畅。 |
| 高校下单 | 15 | 15 | 0 | ✅ 通过 | 新增模块:教材估价准确,宿舍回收的多品类选择器交互正常。 |
| 企业下单 | 12 | 11 | 1 (已修) | ✅ 通过 | 新增模块:修复了 extended_info JSON 解析错误;优化了发票抬头过长时的显示问题。 |
| 订单管理 | 10 | 9 | 1 (已修) | ✅ 通过 | 修复了后端分页索引从 1 开始与前端从 0 开始不一致导致的空数据问题。 |
5. Bug 统计与分析
在本次测试周期中,我们总共发现了 48 个 Bug。
1.1 各类别Bug分布
| Bug类别 | 数量 | 占比 | 典型问题举例 |
|---|---|---|---|
| 功能逻辑 | 22 | 45.8% | 价格计算、订单状态、删除失效 |
| 用户界面 | 12 | 25.0% | 键盘遮挡、颜色错乱 |
| 数据交互 | 8 | 16.7% | 参数校验、Token过期跳转 |
| 兼容性 | 4 | 8.3% | 安卓机安全区适配 |
| 性能 | 2 | 4.2% | 多图上传慢 |
| 总计 | 48 | 100% |
1.2 Bug 修复情况统计
我们对发现的 Bug 进行了严格的分类处理,统计如下:
修复的 Bug (Fixed): 42 个
- 所有 P0(系统崩溃/流程阻塞)和 P1(核心功能错误)级别的 Bug 均已修复。
例如:企业发票抬头无法保存、高校教材估价为 0、JWT Token 无法持久化等问题。
不能重现的 Bug: 1 个
- 偶发性的微信登录网络超时(ErrCode: -1),推测为网络波动,暂无法稳定复现。
这个产品就是这样设计的,不是 Bug: 2 个
- 反馈:测试认为企业订单应支持“现金支付”。
解释:需求定义企业订单为“月结/对公转账”,不支持现场现金,故保留现有逻辑。 - 反馈:删除默认地址后没有自动指定新默认地址。
解释:早期设计如此,后经讨论已优化(算作新需求变更,而非原逻辑Bug)。
没有能力修复,将来也不打算修复: 0 个
当前所有已知 Bug 均在技术可控范围内。
延迟到下一个版本修复 (Deferred): 3 个
- UI 细节:在极其老旧的 Android 机型上,身份切换动画有轻微掉帧。
- 功能:消息推送功能(模板消息)尚未对接,目前仅通过轮询状态更新。
- 体验:弱网环境下的图片上传重试机制。
2. 场景测试
2.1 预期用户与需求
| 用户角色 | 典型人物 | 需求与目标 | 功能组合解决方案 |
|---|---|---|---|
| 高校学生 | 小王 (大四毕业生) | 宿舍堆积了大量旧书和教材,急需清理,且希望书籍能被合理估价而非当废纸卖。 | 高校认证 + 教材回收模块:系统识别其学生身份,提供“教材回收”入口,根据新旧程度(如九成新)自动匹配高于废纸的市场价。 |
| 企业行政 | 李经理 (某公司行政) | 公司产生大量废纸箱和饮料瓶,需要定期清理,且必须开具发票以便财务报销。 | 企业认证 + 批量下单 + 发票管理:系统支持录入税号和发票抬头,下单时支持多品类批量录入,并生成合规的对公结算单。 |
| 家庭主妇 | 张女士 (居民) | 只有少量快递盒,操作要简单,不想填复杂表单。 | 个人模式 + 一键下单:默认进入个人模式,自动定位地址,只需填个大概时间即可等待上门。 |
2.2 测试矩阵
| 测试用例/环境 | 微信小程序(iOS) | 微信小程序(Android) | 微信开发者工具 |
|---|---|---|---|
| 核心下单流程 | 通过 | 通过 | 通过 |
| 高校教材订单 | 通过 | 通过 | 通过 |
| 高校宿舍订单 | 通过 | 通过 | 通过 |
| 企业批量订单 | 通过 | 通过 | 通过 |
| 企业发票功能 | 通过 | 通过 | 通过 |
| 身份切换与认证 | 通过 | 通过 | 通过 |
| 地址管理与定位 | 通过 | 通过 | 通过 |
| 异常断网/弱网 | 通过 | 通过 | - |
| 兼容性适配 | iPhone 13/14/15 | 华为/小米/Oppo主流机型 | - |
2.3 出口条件
- 全角色跑通:个人、高校、企业三种身份的下单流程无阻碍。
- 数据准确:订单金额计算(含教材新旧系数、试点期上浮)准确无误。
- 零严重 Bug:无 P0/P1 级 Bug,系统运行稳定。
- 接口安全:所有业务接口均已通过 JWT 鉴权验证。
二、Alpha 版本发布说明
1. 功能特性列表
本项目为 全新开发 的废品回收平台,本次 Alpha 版本包含以下完整功能:
🔐 认证与用户中心
- 微信一键登录:基于 OpenID 的快捷登录与自动注册。
- 多身份体系:支持 个人、高校(绑定学校院系)、企业(绑定企业信息)三种角色切换。
- 地址管理:支持多地址簿,智能识别地址标签(家/学校/公司),支持默认地址设置。
♻️ 核心业务:多场景下单
- 个人回收:
- 高校回收:
- 企业回收:
⚙️ 后台支撑
- 智能计价引擎:内置 PriceConfig,支持基础价格配置及“试点期价格上浮”策略(如废纸价格上浮 20%)。
- 订单管理:完整的订单状态流转(待接单 -> 待上门 -> 已完成/已取消)。
- 安全机制:全站 HTTPS 加密,JWT 令牌双向认证,全局异常拦截。
2. 运行环境要求
- 客户端:微信小程序(iOS 10.0+,Android 7.0+,最新版微信客户端,推荐微信开发者工具测试)。
- 服务端:Spring Boot 3.x / Java 17,MySQL 8.x,Redis。本版本部署于公网服务器,测试可直接连接。
3. 安装方法
-
微信小程序端
1.前端代码请导入微信开发者工具,配置 AppID(可使用测试号)。
2.电脑需联网,后端服务已部署,默认服务器地址配置在 'env.js'。 -
后端部署
1.后端代码基于 Spring Boot,'application.yml' 内已集成生产数据库信息。
2.'mvn clean package' 打包后运行 'java -jar' 启动服务。
4. 已知问题与限制
- 通知系统:暂未接入微信模板消息,订单状态变更目前仅在“我的订单”列表中查看。
- 地图精度:在部分偏远地区,地址反解析可能不够精确,建议手动修正详细地址。
- 支付功能:目前仅为模拟结算,不涉及真实资金流转。
5. 功能展示
用户登录

身份选择与认证(个人/高校/企业切换)


用户下单

订单列表与状态追踪

6.软件发布方式及发布地址说明:
- 发布方式:本小程序目前仅以团队开发内部测试和演示版本形式进行发布。项目暂未上线公开平台,暂未对外开放下载及试用入口。
- 获取途径:可通过本项目源码仓库获取最新Alpha版本

浙公网安备 33010602011771号