团队作业5——测试与发布(Alpha版本)
一、作业基本信息
| 项目 | 内容 |
|---|---|
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/gdgy/Class34Grade23ComputerScience/ |
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/gdgy/Class34Grade23ComputerScience/homework/13484 |
二、测试过程
2.1 测试策略
本次Alpha版本测试采用多层次测试策略:
-
单元测试(Unit Testing)
- 使用JUnit 5和Mockito进行API层单元测试
- 测试文件:
FileInfoControllerApiTest.java - 覆盖范围:文件列表加载、新建目录、重命名、批量移动等核心API接口
-
集成测试(Integration Testing)
- 使用Spring Boot Test进行端到端测试
- 测试文件:
FileInfoControllerE2ETest.java - 覆盖范围:完整的文件管理业务流程
-
功能测试(Functional Testing)
- 手动测试主要功能模块
- 验证用户交互流程
2.2 测试执行情况
2.2.1 单元测试执行结果
FileInfoControllerApiTest测试用例:
| 测试用例 | 测试方法 | 状态 | 说明 |
|---|---|---|---|
| 加载文件列表 | loadDataList_shouldReturnPagedFiles |
通过 | 验证分页查询和参数透传 |
| 新建目录 | newFolder_shouldBridgeToService |
通过 | 验证目录创建功能 |
| 重命名文件 | rename_shouldReturnUpdatedFile |
通过 | 验证文件重命名功能 |
| 批量移动文件 | changeFileFolder_shouldMoveSelectedFiles |
通过 | 验证批量移动功能 |
2.2.2 端到端测试执行结果
FileInfoControllerE2ETest测试用例:
| 测试场景 | 测试方法 | 状态 | 说明 |
|---|---|---|---|
| 完整文件管理流程 | testCompleteFileManagementWorkflow |
通过 | 包含创建文件夹、上传文件、查看列表、重命名、移动、删除的完整流程 |
| 批量操作 | testBatchOperations |
通过 | 验证批量移动和批量删除功能 |
2.3 测试覆盖的功能模块
-
文件管理模块
- 文件列表加载(支持分页、分类筛选)
- 新建文件夹
- 文件上传(支持分片上传)
- 文件重命名
- 文件移动
- 文件删除(移至回收站)
-
用户管理模块
- 用户登录/注册
- 用户信息管理
- 头像上传
- 密码修改
-
分享功能模块
- 文件分享
- 分享链接访问
- 分享管理
-
回收站模块
- 文件恢复
- 彻底删除
-
预览功能模块
- 图片预览
- 视频预览
- 文档预览(PDF、Word、Excel、TXT等)
- 音频播放
三、Bug统计与分析
3.1 Bug总数统计
在Alpha版本测试过程中,总共发现 15个Bug。
3.2 按类别统计
| Bug类别 | 数量 | 占比 | 说明 |
|---|---|---|---|
| 功能缺陷 | 8 | 53.3% | 功能未按预期工作 |
| 界面问题 | 3 | 20.0% | UI显示异常、交互问题 |
| 性能问题 | 2 | 13.3% | 响应速度慢、资源占用高 |
| 兼容性问题 | 1 | 6.7% | 浏览器兼容性问题 |
| 安全问题 | 1 | 6.7% | 权限验证、数据安全 |
3.3 Bug处理情况
3.3.1 已修复的Bug(8个)
-
BUG-001:文件上传时,文件名包含特殊字符导致上传失败
- 严重程度:高
- 状态:已修复
- 修复方案:添加文件名过滤和转义处理
-
BUG-002:批量删除文件时,部分文件删除失败但无错误提示
- 严重程度:高
- 状态:已修复
- 修复方案:完善错误处理和用户提示
-
BUG-003:文件列表分页时,切换页面后数据不刷新
- 严重程度:中
- 状态:已修复
- 修复方案:修复分页逻辑,确保数据正确加载
-
BUG-004:视频预览时,部分格式无法正常播放
- 严重程度:中
- 状态:已修复
- 修复方案:扩展视频格式支持,优化播放器配置
-
BUG-005:分享链接有效期验证不准确
- 严重程度:中
- 状态:已修复
- 修复方案:修复时间计算逻辑
-
BUG-006:移动文件到已存在同名文件的目录时,提示信息不明确
- 严重程度:低
- 状态:已修复
- 修复方案:优化错误提示信息
-
BUG-007:回收站文件列表加载缓慢
- 严重程度:中
- 状态:已修复
- 修复方案:优化数据库查询,添加索引
-
BUG-008:用户头像上传后,部分浏览器显示异常
- 严重程度:低
- 状态:已修复
- 修复方案:统一图片格式处理
3.3.2 不能重现的Bug(2个)
-
BUG-009:偶尔出现文件上传进度条卡住不动
- 严重程度:中
- 状态:无法重现
- 说明:在测试环境中无法稳定复现,可能与网络环境或浏览器状态有关
-
BUG-010:特定情况下文件列表显示为空,刷新后恢复正常
- 严重程度:低
- 状态:无法重现
- 说明:可能与前端缓存或异步加载时序有关,无法稳定复现
3.3.3 设计如此,不是Bug(2个)
-
BUG-011:文件大小限制为100MB,超过无法上传
- 严重程度:无
- 状态:设计如此
- 说明:Alpha版本设置了文件大小限制,这是预期的设计,后续版本可调整
-
BUG-012:分享链接需要登录才能访问
- 严重程度:无
- 状态:设计如此
- 说明:出于安全考虑,Alpha版本要求登录访问,后续可支持公开分享
3.3.4 没有能力修复,将来也不打算修复(1个)
- BUG-013:IE浏览器完全无法使用
- 严重程度:低
- 状态:不修复
- 说明:IE浏览器已停止支持,现代Web技术无法兼容,不计划修复
3.3.5 延迟到下一版本修复(2个)
-
BUG-014:大文件上传时,网络中断后无法断点续传
- 严重程度:中
- 状态:延迟修复
- 说明:断点续传功能较复杂,需要重构上传逻辑,计划在Beta版本实现
-
BUG-015:文件搜索功能性能较差,搜索结果不准确
- 严重程度:中
- 状态:延迟修复
- 说明:需要引入全文搜索引擎(如Elasticsearch),计划在Beta版本优化
四、场景测试(Scenario Testing)
4.1 目标用户群体
4.1.1 个人用户
- 用户画像:普通个人用户,需要存储和管理个人文件
- 使用场景:
- 上传照片、视频等个人文件
- 在不同设备间同步文件
- 分享文件给朋友或家人
- 整理和分类文件
- 核心需求:
- 简单易用的界面
- 快速上传和下载
- 可靠的文件存储
- 便捷的分享功能
4.1.2 小型团队用户
- 用户画像:小团队、工作室,需要协作和文件共享
- 使用场景:
- 团队成员共享项目文件
- 协作编辑文档
- 版本管理和备份
- 核心需求:
- 文件权限管理
- 协作功能
- 文件版本控制
4.1.3 学生用户
- 用户画像:学生群体,需要存储学习资料
- 使用场景:
- 存储课件、作业、笔记
- 分享学习资料
- 跨设备访问学习材料
- 核心需求:
- 免费或低成本
- 足够的存储空间
- 快速访问
4.2 功能组合使用场景
场景1:个人文件管理流程
- 用户登录 → 进入主界面
- 创建文件夹 → 按类别组织文件(如"照片"、"文档")
- 上传文件 → 将文件上传到对应文件夹
- 文件预览 → 在线查看图片、视频、文档
- 文件分享 → 生成分享链接发送给他人
- 文件管理 → 重命名、移动、删除不需要的文件
- 回收站管理 → 恢复误删文件或彻底删除
场景2:文件分享协作流程
- 选择文件 → 在文件列表中选择要分享的文件
- 创建分享 → 设置分享有效期和访问权限
- 获取链接 → 复制分享链接
- 分享给他人 → 通过微信、QQ等方式发送链接
- 访问者使用 → 通过链接访问和下载文件
- 管理分享 → 查看分享记录,取消分享
场景3:文件整理流程
- 查看文件列表 → 浏览所有文件
- 按类型筛选 → 查看特定类型的文件(图片、视频、文档等)
- 批量操作 → 选择多个文件进行批量移动或删除
- 文件重命名 → 规范化文件命名
- 清理空间 → 删除不需要的文件,释放存储空间
4.3 功能组合满足用户需求
EasyPan通过以下功能组合满足不同用户的需求:
个人用户需求满足:
- 存储需求:文件上传功能 + 云存储
- 访问需求:多设备Web访问 + 文件预览
- 分享需求:分享链接生成 + 访问控制
- 管理需求:文件夹管理 + 文件操作(重命名、移动、删除)
团队用户需求满足:
- 协作需求:文件分享 + 权限控制(部分实现)
- 管理需求:文件分类 + 批量操作
学生用户需求满足:
- 存储需求:免费存储空间
- 学习资料管理:文件夹分类 + 文件预览
- 资料分享:分享功能
五、测试矩阵(Test Matrix)
5.1 平台测试矩阵
| 操作系统 | 版本 | 测试状态 | 备注 |
|---|---|---|---|
| Windows | Windows 10 | 通过 | 主要测试平台 |
| Windows | Windows 11 | 通过 | |
| macOS | macOS 12+ | 通过 | |
| Linux | Ubuntu 20.04+ | 通过 | |
| Android | Android 10+ | 部分功能 | 移动端浏览器 |
| iOS | iOS 14+ | 部分功能 | 移动端浏览器 |
5.2 浏览器测试矩阵
| 浏览器 | 版本 | 测试状态 | 主要问题 |
|---|---|---|---|
| Chrome | 100+ | 通过 | 无 |
| Edge | 100+ | 通过 | 无 |
| Firefox | 95+ | 通过 | 无 |
| Safari | 14+ | 通过 | 部分CSS兼容性 |
| Opera | 85+ | 通过 | 无 |
| IE | 11 | 不支持 | 完全不兼容 |
5.3 硬件配置测试矩阵
| 配置类型 | CPU | 内存 | 网络 | 测试状态 | 备注 |
|---|---|---|---|---|---|
| 低配 | 2核 | 4GB | 10Mbps | 基本可用 | 大文件上传较慢 |
| 中配 | 4核 | 8GB | 50Mbps | 良好 | 推荐配置 |
| 高配 | 8核+ | 16GB+ | 100Mbps+ | 优秀 | 最佳体验 |
5.4 功能测试矩阵
| 功能模块 | 核心功能 | 测试状态 | 备注 |
|---|---|---|---|
| 用户管理 | 注册、登录、信息管理 | 通过 | |
| 文件上传 | 单文件、多文件、分片上传 | 通过 | 大文件上传性能待优化 |
| 文件下载 | 单文件、批量下载 | 通过 | |
| 文件预览 | 图片、视频、文档预览 | 通过 | 部分格式支持有限 |
| 文件管理 | 重命名、移动、删除 | 通过 | |
| 文件夹管理 | 创建、删除、移动 | 通过 | |
| 文件分享 | 创建分享、访问分享 | 通过 | |
| 回收站 | 恢复、彻底删除 | 通过 | |
| 搜索功能 | 文件搜索 | 性能问题 | 延迟修复 |
| 批量操作 | 批量移动、删除 | 通过 |
六、出口条件(Exit Criteria)
6.1 功能完整性标准
已满足的条件:
- 核心文件管理功能完整可用(上传、下载、删除、移动、重命名)
- 用户认证和授权功能正常
- 文件分享功能基本可用
- 文件预览功能支持主流格式
- 回收站功能正常
待完善的功能:
- 文件搜索功能性能需要优化(延迟到Beta版本)
- 断点续传功能未实现(延迟到Beta版本)
- 文件权限管理功能需要增强
6.2 质量标准
已满足的条件:
- 关键Bug修复率:≥80%(8/10个关键Bug已修复)
- 高严重性Bug:0个未修复的高严重性Bug
- 核心功能测试通过率:100%(所有核心功能测试通过)
- 浏览器兼容性:支持主流浏览器(Chrome、Firefox、Edge、Safari)
待改进的方面:
- 性能优化:大文件上传和搜索功能需要优化
- 移动端适配:移动端浏览器体验需要改进
6.3 稳定性标准
已满足的条件:
- 系统无崩溃性错误
- 核心业务流程稳定运行
- 数据库操作正常,无数据丢失
EasyPan Alpha 版本发布说明
1. 版本概述
EasyPan是一款基于Java和Vue 3开发的云存储文件管理系统,提供文件上传、下载、预览、分享等核心功能,旨在为用户提供简单、高效的文件管理体验。
2. 新功能列表
2.1 文件管理功能
- 文件上传与下载
- 新建文件夹
- 文件批量操作(删除、移动)
- 文件搜索功能
- 文件分类浏览(全部、视频、音频、图片、文档、其他)
- 文件重命名
2.2 文件预览功能
- 图片预览(支持JPG、PNG等格式)
- 视频播放(支持转码和HLS流媒体)
- 音频播放
- PDF文档预览
- Word文档预览
- Excel表格预览
- 文本文件预览
- 代码文件高亮预览
2.3 文件分享功能
- 创建文件分享链接
- 设置分享有效期(1天、7天、30天、永久)
- 设置分享提取码
- 查看分享记录
- 取消分享
2.4 回收站功能
- 文件删除到回收站
- 回收站文件恢复
- 回收站文件永久删除
2.5 用户管理功能
- 邮箱注册与登录
- QQ第三方登录
- 修改密码
- 修改头像
- 查看个人空间使用情况
2.6 管理员功能
- 系统设置
- 用户列表管理
- 用户文件管理
3. 修复的缺陷
- 修复了大文件上传失败的问题
- 修复了视频转码进度显示异常
- 修复了分享链接权限控制问题
- 修复了回收站文件恢复路径错误
- 修复了文件重命名时的字符限制问题
- 修复了移动端适配问题
4. 运行环境要求
4.1 后端环境
- JDK版本:1.8+
- 数据库:MySQL 5.7+
- 缓存:Redis 5.0+
- 操作系统:Windows/Linux/MacOS
4.2 前端环境
- 浏览器:Chrome 80+、Firefox 75+、Safari 13+、Edge 80+
- 分辨率:1024x768及以上
5. 安装方法
5.1 后端安装
- 创建MySQL数据库并执行
easypan.sql初始化脚本 - 配置
application.properties文件中的数据库和Redis连接信息 - 打包项目:
mvn clean package -DskipTests - 运行项目:
java -jar easypan-1.0.jar
5.2 前端安装
- 安装依赖:
npm install - 配置API接口地址(在
src/utils/Request.js中修改) - 开发环境运行:
npm run dev - 生产环境构建:
npm run build
6. 已知问题和限制
- 文件大小限制:单次上传文件大小不超过1GB
- 转码支持:视频转码仅支持常见格式(MP4、AVI、MOV等)
- 预览限制:部分特殊格式文件不支持在线预览,需下载查看
- 并发限制:系统最大支持1000并发用户
- 存储空间:默认每个用户存储空间为10GB
- 浏览器兼容性:部分功能在低版本浏览器上可能存在兼容性问题
7. 发布方式及地址
7.1 发布方式
- 后端:Java JAR包
- 前端:静态HTML/CSS/JS文件
浙公网安备 33010602011771号