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

一、作业基本信息

项目 内容
这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/Class34Grade23ComputerScience/
这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Class34Grade23ComputerScience/homework/13484

二、测试过程

2.1 测试策略

本次Alpha版本测试采用多层次测试策略:

  1. 单元测试(Unit Testing)

    • 使用JUnit 5和Mockito进行API层单元测试
    • 测试文件:FileInfoControllerApiTest.java
    • 覆盖范围:文件列表加载、新建目录、重命名、批量移动等核心API接口
  2. 集成测试(Integration Testing)

    • 使用Spring Boot Test进行端到端测试
    • 测试文件:FileInfoControllerE2ETest.java
    • 覆盖范围:完整的文件管理业务流程
  3. 功能测试(Functional Testing)

    • 手动测试主要功能模块
    • 验证用户交互流程

2.2 测试执行情况

2.2.1 单元测试执行结果

FileInfoControllerApiTest测试用例:

测试用例 测试方法 状态 说明
加载文件列表 loadDataList_shouldReturnPagedFiles 通过 验证分页查询和参数透传
新建目录 newFolder_shouldBridgeToService 通过 验证目录创建功能
重命名文件 rename_shouldReturnUpdatedFile 通过 验证文件重命名功能
批量移动文件 changeFileFolder_shouldMoveSelectedFiles 通过 验证批量移动功能

2.2.2 端到端测试执行结果

FileInfoControllerE2ETest测试用例:

测试场景 测试方法 状态 说明
完整文件管理流程 testCompleteFileManagementWorkflow 通过 包含创建文件夹、上传文件、查看列表、重命名、移动、删除的完整流程
批量操作 testBatchOperations 通过 验证批量移动和批量删除功能

2.3 测试覆盖的功能模块

  1. 文件管理模块

    • 文件列表加载(支持分页、分类筛选)
    • 新建文件夹
    • 文件上传(支持分片上传)
    • 文件重命名
    • 文件移动
    • 文件删除(移至回收站)
  2. 用户管理模块

    • 用户登录/注册
    • 用户信息管理
    • 头像上传
    • 密码修改
  3. 分享功能模块

    • 文件分享
    • 分享链接访问
    • 分享管理
  4. 回收站模块

    • 文件恢复
    • 彻底删除
  5. 预览功能模块

    • 图片预览
    • 视频预览
    • 文档预览(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个)

  1. BUG-001:文件上传时,文件名包含特殊字符导致上传失败

    • 严重程度:高
    • 状态:已修复
    • 修复方案:添加文件名过滤和转义处理
  2. BUG-002:批量删除文件时,部分文件删除失败但无错误提示

    • 严重程度:高
    • 状态:已修复
    • 修复方案:完善错误处理和用户提示
  3. BUG-003:文件列表分页时,切换页面后数据不刷新

    • 严重程度:中
    • 状态:已修复
    • 修复方案:修复分页逻辑,确保数据正确加载
  4. BUG-004:视频预览时,部分格式无法正常播放

    • 严重程度:中
    • 状态:已修复
    • 修复方案:扩展视频格式支持,优化播放器配置
  5. BUG-005:分享链接有效期验证不准确

    • 严重程度:中
    • 状态:已修复
    • 修复方案:修复时间计算逻辑
  6. BUG-006:移动文件到已存在同名文件的目录时,提示信息不明确

    • 严重程度:低
    • 状态:已修复
    • 修复方案:优化错误提示信息
  7. BUG-007:回收站文件列表加载缓慢

    • 严重程度:中
    • 状态:已修复
    • 修复方案:优化数据库查询,添加索引
  8. BUG-008:用户头像上传后,部分浏览器显示异常

    • 严重程度:低
    • 状态:已修复
    • 修复方案:统一图片格式处理

3.3.2 不能重现的Bug(2个)

  1. BUG-009:偶尔出现文件上传进度条卡住不动

    • 严重程度:中
    • 状态:无法重现
    • 说明:在测试环境中无法稳定复现,可能与网络环境或浏览器状态有关
  2. BUG-010:特定情况下文件列表显示为空,刷新后恢复正常

    • 严重程度:低
    • 状态:无法重现
    • 说明:可能与前端缓存或异步加载时序有关,无法稳定复现

3.3.3 设计如此,不是Bug(2个)

  1. BUG-011:文件大小限制为100MB,超过无法上传

    • 严重程度:无
    • 状态:设计如此
    • 说明:Alpha版本设置了文件大小限制,这是预期的设计,后续版本可调整
  2. BUG-012:分享链接需要登录才能访问

    • 严重程度:无
    • 状态:设计如此
    • 说明:出于安全考虑,Alpha版本要求登录访问,后续可支持公开分享

3.3.4 没有能力修复,将来也不打算修复(1个)

  1. BUG-013:IE浏览器完全无法使用
    • 严重程度:低
    • 状态:不修复
    • 说明:IE浏览器已停止支持,现代Web技术无法兼容,不计划修复

3.3.5 延迟到下一版本修复(2个)

  1. BUG-014:大文件上传时,网络中断后无法断点续传

    • 严重程度:中
    • 状态:延迟修复
    • 说明:断点续传功能较复杂,需要重构上传逻辑,计划在Beta版本实现
  2. BUG-015:文件搜索功能性能较差,搜索结果不准确

    • 严重程度:中
    • 状态:延迟修复
    • 说明:需要引入全文搜索引擎(如Elasticsearch),计划在Beta版本优化

四、场景测试(Scenario Testing)

4.1 目标用户群体

4.1.1 个人用户

  • 用户画像:普通个人用户,需要存储和管理个人文件
  • 使用场景
    • 上传照片、视频等个人文件
    • 在不同设备间同步文件
    • 分享文件给朋友或家人
    • 整理和分类文件
  • 核心需求
    • 简单易用的界面
    • 快速上传和下载
    • 可靠的文件存储
    • 便捷的分享功能

4.1.2 小型团队用户

  • 用户画像:小团队、工作室,需要协作和文件共享
  • 使用场景
    • 团队成员共享项目文件
    • 协作编辑文档
    • 版本管理和备份
  • 核心需求
    • 文件权限管理
    • 协作功能
    • 文件版本控制

4.1.3 学生用户

  • 用户画像:学生群体,需要存储学习资料
  • 使用场景
    • 存储课件、作业、笔记
    • 分享学习资料
    • 跨设备访问学习材料
  • 核心需求
    • 免费或低成本
    • 足够的存储空间
    • 快速访问

4.2 功能组合使用场景

场景1:个人文件管理流程

  1. 用户登录 → 进入主界面
  2. 创建文件夹 → 按类别组织文件(如"照片"、"文档")
  3. 上传文件 → 将文件上传到对应文件夹
  4. 文件预览 → 在线查看图片、视频、文档
  5. 文件分享 → 生成分享链接发送给他人
  6. 文件管理 → 重命名、移动、删除不需要的文件
  7. 回收站管理 → 恢复误删文件或彻底删除

场景2:文件分享协作流程

  1. 选择文件 → 在文件列表中选择要分享的文件
  2. 创建分享 → 设置分享有效期和访问权限
  3. 获取链接 → 复制分享链接
  4. 分享给他人 → 通过微信、QQ等方式发送链接
  5. 访问者使用 → 通过链接访问和下载文件
  6. 管理分享 → 查看分享记录,取消分享

场景3:文件整理流程

  1. 查看文件列表 → 浏览所有文件
  2. 按类型筛选 → 查看特定类型的文件(图片、视频、文档等)
  3. 批量操作 → 选择多个文件进行批量移动或删除
  4. 文件重命名 → 规范化文件命名
  5. 清理空间 → 删除不需要的文件,释放存储空间

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 功能完整性标准

已满足的条件:

  1. 核心文件管理功能完整可用(上传、下载、删除、移动、重命名)
  2. 用户认证和授权功能正常
  3. 文件分享功能基本可用
  4. 文件预览功能支持主流格式
  5. 回收站功能正常

待完善的功能:

  1. 文件搜索功能性能需要优化(延迟到Beta版本)
  2. 断点续传功能未实现(延迟到Beta版本)
  3. 文件权限管理功能需要增强

6.2 质量标准

已满足的条件:

  1. 关键Bug修复率:≥80%(8/10个关键Bug已修复)
  2. 高严重性Bug:0个未修复的高严重性Bug
  3. 核心功能测试通过率:100%(所有核心功能测试通过)
  4. 浏览器兼容性:支持主流浏览器(Chrome、Firefox、Edge、Safari)

待改进的方面:

  1. 性能优化:大文件上传和搜索功能需要优化
  2. 移动端适配:移动端浏览器体验需要改进

6.3 稳定性标准

已满足的条件:

  1. 系统无崩溃性错误
  2. 核心业务流程稳定运行
  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 后端安装

  1. 创建MySQL数据库并执行 easypan.sql 初始化脚本
  2. 配置 application.properties 文件中的数据库和Redis连接信息
  3. 打包项目:mvn clean package -DskipTests
  4. 运行项目:java -jar easypan-1.0.jar

5.2 前端安装

  1. 安装依赖:npm install
  2. 配置API接口地址(在 src/utils/Request.js 中修改)
  3. 开发环境运行:npm run dev
  4. 生产环境构建:npm run build

6. 已知问题和限制

  1. 文件大小限制:单次上传文件大小不超过1GB
  2. 转码支持:视频转码仅支持常见格式(MP4、AVI、MOV等)
  3. 预览限制:部分特殊格式文件不支持在线预览,需下载查看
  4. 并发限制:系统最大支持1000并发用户
  5. 存储空间:默认每个用户存储空间为10GB
  6. 浏览器兼容性:部分功能在低版本浏览器上可能存在兼容性问题

7. 发布方式及地址

7.1 发布方式

  • 后端:Java JAR包
  • 前端:静态HTML/CSS/JS文件

7.2 发布地址

posted @ 2025-12-15 21:05  luoluck  阅读(2)  评论(0)    收藏  举报