[T.10]团队项目:Alpha 阶段测试报告
团队项目:Alpha 阶段测试报告
| 项目 | 内容 |
|---|---|
| 这个作业属于哪个课程 | 2025年春季软件工程(罗杰、任健) |
| 这个作业的要求在哪里 | 团队项目:Alpha 阶段测试报告 |
| 我在这个课程的目标是 | 通过学习和团队合作,了解敏捷开发流程。提高个人编码素养,掌握软件工程的核心概念和方法。 |
| 这个作业在哪个具体方面帮助我实现目标 | 在Alpha阶段开展测试,保证软件可靠稳定地交付给用户,提高软件质量 |
Part 1 测试中出现的bug
1.1 前端
| bug描述 | 原因 | 状态 | 解决方案 |
|---|---|---|---|
| 页面缺少登出按钮 | 交互理念不合理 | 已修复 | 侧边栏增加登出按钮 |
| 网页路由信息不准确 | 前端路由配置不正确 | 已修复 | 调整路由配置 |
| token刷新时间过快,造成页面多处问题 | 每个页面自启动线程刷新token | 已修复 | 优化token刷新机制,线程池控制刷新频率 |
| 登录界面密码显示异常,显示按钮仅在输入时可见,输入完成按钮消失 | 模板组件不兼容导致的覆盖 | 已修复 | |
| 个人头像上传允许非图片格式文件上传 | 略 | 已修复 | 上传格式做审查,只允许图片格式文件上传 |
| 个人信息修改逻辑交互存在问题,修改未完成不可退出此界面 | 交互理念不合理 | 已修复 | 增加提示,允许修改未完成退出 |
| 用户头像遮盖个人信息 | 页面比例和大小设置不合理 | 已修复 | 调整页面比例和大小,优化布局 |
| 文献删除存在问题,上级删除后,下级无法递归地删除 | 逻辑考虑漏洞 | 未修复 | |
| 文献详情页缺少返回保存提醒 | 交互理念不合理 | 已修复 | 增加自动保存和提醒 |
| 树状文件选择选中父节点后子节点仍需手动选择 | 树状选择组件不支持父节点选中自动选中子节点 | 已修复 | 优化树状选择组件,支持父节点选中自动选中子节点 |
| 文献名称过长遮盖部分按钮信息 | 已修复 | 增加文献名长度限制 | |
| 文献上传不做限制,后缀非为pdf,md文件可上传 | 已修复 | 增加文件格式限制,同时后端增加魔数检测 | |
| 文献上传,重复敲击enter,将会多次上传同一文件 | 上传逻辑存在问题 | 已修复 | 优化上传逻辑,增加文件名唯一性校验,并且防止enter重复上传 |
| 缺少笔记,文献搜索 | 功能缺失 | 已修复 | 增加搜索模块 |
1.2 后端
| bug描述 | 原因 | 状态 | 解决方案 |
|---|---|---|---|
| 删除笔记时,触发数据库异常 | 删除后查询不存在的笔记 | 已修复 | 完善删除逻辑,修改SQL查询 |
| 部分文献上传失败 | 文献作者名限制100字节,实际作者名超出限制 | 已修复 | 修改作者名限制,允许更长的作者名 |
| 统计用户文献和笔记数量问题 | 数据统计未精准定位到用户 | 已修复 | 用户数据追踪更加精确 |
| 图片丢失 | 未做持久化存储 | 已修复 | 部署云存储服务,保存图片 |
| 缺少笔记,文献搜索 | 功能缺失 | 已修复 | 增加搜索模块 |
Part 2 测试方法
2.1 单元测试
后端采用FastAPI框架,单元测试结合FastAPI的TestClient实现验证。
Alpha阶段的软件功能含有允许用户查看文献,并在文献下建立笔记写笔记。平台追踪用户的阅读和写作,生成知识图谱。
根据功能,具体测试共分为4个部分:
- 用户的注册和登录,个人信息修改相关的测试
- 文献的上传、删除、修改、查询相关的测试
- 笔记的上传、删除、修改、查询相关的测试
- 文献库的上传,查询相关的测试
对于每个模块涉及多个测试用例,覆盖用户场景、异常场景、边界场景等,共计测试34个接口。囊括此框架下此阶段所有的接口,覆盖率达到87%(部分接口无法通过此方法测试,如AI对话接口)。
2.2 场景测试
预期用户:
| 用户信息 | 用户描述 |
|---|---|
| 年龄 | 18岁 |
| 性别 | 男 |
| 职业 | 大一本科生 |
| 用户需求 | 在学习资料之余,需要随时随地记录自己的学习笔记(重点在于学习) |
| 软件功能 | 为用户提供笔记功能,同时根据笔记结构和内容,生成知识图谱 |
| 预期效果 | 较好地完成笔记的记录和知识图谱构建,为用户的学习提供便利 |
大一本科生李明(18岁)的深夜复习困境:
两个笔记软件:
- OneNote 里是课堂截图,但知识点分散在不同章节
- 幕布 里列着思维导图,但公式推导过程无法动态展示
当他试图整理"矩阵秩的性质"专题时,发现:同一概念在不同平台的笔记重复率达40%,
手绘的关联图谱无法同步到电子设备,复习时需反复切换APP比对内容,根本无法专心高效地学习!
他觉得现有软件无法自动识别离散笔记中的知识点,笔记的记录关联性较弱,知识图谱的构建不够直观。这种关键能力的缺少导致用户学习割裂感强,学习效率低下。
在准备期中考试时,因无法快速定位"行列式与矩阵秩的关系"相关笔记,导致复习计划中断2小时。
| 用户信息 | 用户描述 |
|---|---|
| 年龄 | 23岁 |
| 性别 | 女 |
| 职业 | 研究生 |
| 用户需求 | 需要快速、便捷地获取文献资料,根据文献的内容需要有批注等额外功能 |
| 软件功能 | 提供文献库便于查找文献,文献支持批注和关联笔记,同时具有追踪文献和笔记的功能 |
| 预期效果 | 缓解文献阅读困难,提高文献检索效率。追踪功能能够帮助用户追踪自己的学习进度,build计划 |
研究生张薇(23岁)的文献泥潭
在实验室赶论文的张薇,面对着:
-
Zotero 里堆积的387篇未读文献
-
EndNote 中重复下载的12篇同主题论文
-
MarginNote 里200+条零散批注,却找不到3周前某篇JACS文献的关键实验数据标注
她的具体困扰:
- 跨平台文献检索时,常被不同数据库的格式差异打断思路
- 重要批注淹没在碎片化记录中,写论文时需重新筛查
- 无法可视化追踪"光催化反应"课题的文献阅读进度
现有工具有着结构性缺陷:
- 批注系统与文献本体分离,形成数据孤岛
- 缺乏智能提醒未关联的相似文献
- 阅读进度统计仅停留在时间维度,未关联知识密度
在日日夜夜为论文和课题奋斗的张薇,对自己的科研前途感到堪忧,心里呐喊:那篇论文难毁了我的科研梦!
具体测试方案:
-
用户登录注册及信息管理
用户完成登录注册后,可查看个人信息、修改信息,并验证修改结果,完成基础信息设置。
-
文献管理与笔记编辑
支持上传文献、撰写Markdown笔记,并在文献详情页预览笔记内容。用户可随时修改或删除笔记。
-
构建知识图谱与导出
通过重复文献管理流程,用户可构建树状文献目录,支持一键导出文献及生成可视化知识图谱。
-
学习进度可视化
个人主页展示文献/笔记统计面板,通过折线图直观呈现学习进度趋势。
测试结果:
- 典型用户覆盖
学术研究人员:完成文献上传→笔记关联→知识图谱构建全流程验证
学生群体:高频次登录、文献分类管理与学习进度跟踪场景通过率100%
- 核心场景验证
| 场景类型 | 验证指标 | 通过率 |
|---|---|---|
| 账户管理 | 跨平台注册/登录流程完整性 | 100% |
| 文献操作 | PDF/Markdown格式上传与解析稳定性 | 98%* |
| 笔记系统 | Markdown编辑/预览同步一致性 | 100% |
| 数据可视化 | 知识图谱生成与导出功能可用性 | 95% |
| *注:2%失败案例为大文件(>50MB)传输时间较长,已纳入优化队列 |
- 优化方向
- 用户注册和登录:用户注册和登录流程较为简单,但存在一些缺陷,如密码强度要求不高。
- 文献上传:文献上传功能存在漏洞,支持上传PDF、Markdown等格式,但不支持上传图片,即无法在markdown中插入图片。同时上传依赖于后缀名检测,部分用户可采取更改后缀名绕过检测。
- 文献管理:文献管理人机交互理解存在问题,用户上传的文献难以管理,树状目录难以直观呈现,仍需用户手动选择每个子节点。
2.3 压力测试
压力测试是指在给定负载下,测试系统的处理能力、稳定性、容错能力、可靠性等指标。
本软件前端需要支持pdf和markdown的渲染,知识图谱的构建生成。后端需要支持大规模用户访问和文件上传和下载。
Alpha阶段的压力测试主要是模拟用户的行为,测试软件的处理能力、稳定性、容错能力、可靠性等指标。
测试内容:
前端上传超大markdown进行渲染,测试前端的渲染性能,前端的稳定性。
前端上传超大pdf(约50MB)进行渲染,测试前端的渲染性能,前端的稳定性。
通过python脚本模拟多个用户同时登录软件,并向服务器上传文件,下载文献。
响应时间随着用户数目增多而增多,但在可接受范围内1-2s.
图为模拟20个用户同时上传文件,服务器的处理能力和稳定性。
测试矩阵
| 操作系统 | 浏览器 | 版本号 | 阶段 | 登录 | 注册 | 上传文件 | 下载文件 | 查看文献 | 查看笔记 | 创建笔记 | 修改个人信息 | 修改密码 | 删除文件 | 删除笔记 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Windows 11 | Chrome | 118.0.5993.70 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
| Chrome | 117.0.5938.92 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Firefox | 119.0 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Firefox | 118.0.2 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Edge | 118.0.2088.46 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Edge | 117.0.2045.47 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Windows 10 | Chrome | 118.0.5993.70 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
| Chrome | 117.0.5938.92 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Firefox | 119.0 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Firefox | 118.0.2 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Edge | 118.0.2088.46 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Edge | 117.0.2045.47 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| macOS | Safari | 17.0 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
| (Ventura 13.5) | Safari | 16.6 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
| Chrome | 118.0.5993.70 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Firefox | 119.0 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | |
| Linux | Firefox | 119.0 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
| (Ubuntu 22.04) | Firefox | 118.0.2 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
| Chrome | 118.0.5993.70 | Alpha | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ | √ |
根据当前测试阶段结果,系统在桌面端(Windows 11/10、macOS Ventura、Ubuntu Linux)的跨浏览器兼容性表现良好,所有核心功能(登录注册、文献管理、笔记编辑、个人信息维护等)在 Chrome/Firefox/Edge/Safari 的最新及次新版本中均通过验证。移动端(Android/iOS)因页面自适应问题暂未进入测试流程,相关适配工作将作为β阶段重点任务推进。当前版本已达到Alpha阶段出口标准,可进入下一开发迭代环节。
出口条件
功能条件:
- 注册、登录、个人信息修改、上传文件、下载文件、查看文献、查看笔记、创建笔记、修改个人信息、修改密码、删除文件、删除笔记功能正常。
- 文献上传、删除、修改、查询功能正常。
- 笔记上传、删除、修改、查询功能正常。
- 文献库上传、查询功能正常。
- 文献支持批注和关联笔记。
- 文献支持批量下载。
- 文献支持批量删除。
在主流的操作系统和浏览器上可以通过域名稳定访问,并且功能基本正常。
对于移动端适配部分机型
网页性能较好,可以支持现今绝大多数设备运行而不卡顿。
测试条件
通过测试,软件的前端、后端、数据库、文件系统、网络、服务器等各个模块的稳定性、性能、容错性、可靠性等指标达到要求。
包括单元测试,集成测试,场景测试。在压力测试下,可以同时支持不超过百个用户的并发访问,并保证服务的稳定运行。

浙公网安备 33010602011771号