Alpha版本测试报告

这个作业属于哪个课程 计科23级12班
这个作业要求在哪里 团队作业3--需求改进&系统设计 - 作业 - 计科23级12班 - 班级博客 - 博客园
这个作业的目标 测试与发布Alpha版本
  • 队员一(高圣凯):负责项目管理、会议组织、后端核心架构、数据库设计。
  • 成员二 (郭程朗):负责前端页面、用户交互、原型设计。
  • 成员三 (方哲):负责后端业务逻辑、API接口、服务器部署与CI/CD。
  • 成员四 (蒋国栋):负责前后端联动功能、编写测试用例、质量保证

Alpha版本测试报告

一、测试概述

本次测试针对 iBlog Community(技术博客社区系统)Alpha版本,测试周期为第12-13周。测试工作严格遵循团队在《软件工程团队作业3》中制定的测试计划,覆盖了用户系统、文章管理、评论系统、社交功能及后台管理等核心模块。本次测试的核心目标在于验证“写作-发布-互动-管理”核心用户流程的完整性与可用性,识别并修复阻塞性缺陷,确保系统达到预定的质量基线,为Alpha版本的发布提供决策依据。测试团队采用了“测试左移”策略,将部分验证活动嵌入开发过程,旨在早期发现缺陷,提升交付质量。

二、测试计划与执行

2.1 测试阶段与执行情况

测试阶段 时间 负责人 测试重点 执行情况与产出
单元测试 开发同步 全员 验证Service层业务逻辑、工具类方法的正确性。 已完成。核心业务类(如UserService, ArticleService)单元测试覆盖率达到85%,共编写测试用例127个。
API测试 第13周 队员四 验证RESTful接口的功能、参数校验、异常处理和性能。 已完成。使用Postman创建了完整的接口测试集合,包含68个请求,覆盖所有已开发接口,通过率100%。使用Newman进行了自动化回归测试。
集成测试 第14周 队员四 验证前后端数据交互、模块间调用、以及关键业务流程。 已完成。重点测试了“用户注册-登录-发文-评论-关注”端到端流程,以及“后台审核文章”流程。主干业务流程全部通过,发现并修复了3个集成性问题。
用户验收测试 第14周末 全员 从最终用户角度验证功能是否符合需求,评估使用体验。 已完成。团队内部模拟三类典型用户角色进行操作,并邀请了5名外部同学进行体验。反馈良好,核心功能均可用,收集到12条优化建议。

2.2 测试环境

环境类型 详细配置说明
后端环境 - 应用框架:Spring Boot 2.7.18 - 数据库:MySQL 8.0.33 (Docker容器化部署) - 缓存:Redis 7.0.15 (Docker容器化部署) - 服务器:本地测试服务器(Ubuntu 22.04 LTS)
前端环境 - 开发框架:Vue 3.4 + TypeScript - UI库:Element Plus 2.3.14 - 构建工具:Vite 5.0 - 运行环境:Node.js 18.18.0
网络与环境 - 网络:局域网环境,使用浏览器开发者工具模拟“Fast 3G”网络条件进行弱网测试。 - 数据:使用脚本预置了测试数据(50个用户,200篇文章,1000条评论)。

三、Bug统计与分析

3.1 Bug总数与分类

在Alpha测试阶段,通过各类测试活动共发现 14个Bug。根据团队定义的Bug生命周期管理策略,这些Bug已全部分类处理完毕,具体分布如下:

Bug类别 数量 处理原则与具体说明
已修复的Bug 10 原则:影响核心功能或存在安全隐患的Bug必须在Alpha版本修复。 说明:包括3个P0/P1级严重Bug(如权限漏洞)和7个P2级一般功能Bug,均已修复并通过回归测试验证。
无法重现的Bug 1 原则:测试人员报告后,开发人员无法在给定环境下复现,且无明确复现步骤。 说明:一个关于前端路由在特定操作顺序下跳转失败的偶发问题,由于无法定位,暂挂起。
设计如此(非Bug) 1 原则:经过团队评审,确认当前行为符合既定设计或需求规格。 说明:移动端某个按钮尺寸偏小,经评审属于设计优化范畴,非程序错误,已记录至UI优化清单。
暂不修复(延至Beta) 2 原则:Bug本身成立,但不影响Alpha版本核心流程和发布,修复成本较高或涉及架构调整。 说明:1. 私信消息状态同步延迟问题;2. 文章搜索对长尾关键词匹配不精准。二者均计划在Beta阶段优化。
无需修复/不修复 0 原则:Bug影响极微,修复价值低于成本,或属于第三方依赖问题。 说明:本版本暂无此类Bug。

3.2 典型Bug示例与影响分析

  • P0级Bug:权限校验漏洞
    • 现象:普通用户通过直接拼接URL /admin/user/list 可访问用户管理列表接口,并返回数据。
    • 根因:后台对应的Controller接口方法上遗漏了权限注解。
    • 影响:严重安全问题,导致未授权访问。
    • 修复:补充所有后台管理接口的权限注解,并在网关层增加角色校验。已修复
  • P1级Bug:文章草稿丢失
    • 现象:用户在文章编辑页长时间写作,浏览器意外刷新或标签页关闭后,内容全部丢失。
    • 根因:前端未实现草稿的自动保存机制,仅有点击“保存草稿”按钮时才触发API调用。
    • 影响:用户体验极差,可能导致用户创作成果损失。
    • 修复:每隔30秒自动将内容保存至本地localStorage,并在页面加载时尝试恢复。已修复

四、场景测试(Scenario Testing)

4.1 典型用户场景验证

我们选取了需求文档中的三个核心用户画像,构建了端到端的使用场景进行测试:

用户角色 场景描述 测试路径与验证点 测试结果
技术博主(张伟) 完成一篇技术文章的撰写、发布、与读者互动并分析数据。 1. 登录 -> 2. 进入写作台,使用Markdown编辑器撰写 -> 3. 添加标签/分类 -> 4. 发布文章 -> 5. 回复文章下的评论 -> 6. 在后台查看该文章阅读量/点赞数。 通过。流程顺畅,各功能点均按预期工作。
学习者(王小雨) 寻找学习资源,与作者互动,管理个人学习内容。 1. 通过搜索框查找“Java基础” -> 2. 浏览结果,收藏一篇高质量文章 -> 3. 在该文章下提问 -> 4. 收到作者回复通知 -> 5. 在个人中心查看“我的收藏”。 通过。搜索、收藏、评论、通知功能均有效。个人主页信息聚合准确。
技术团队(管理员) 管理社区内容,处理用户举报,查看系统数据。 1. 管理员登录后台 -> 2. 审核一篇待审核的文章(通过/驳回)-> 3. 查看用户管理列表 -> 4. 进入数据概览页查看当日活跃用户数。 通过。后台管理功能完整,权限控制有效,数据展示正确。

4.2 功能组合的有效性

测试结果表明,系统的功能模块能够有效地组合以满足不同用户的需求:

  • 对于创作者:“Markdown编辑器” + “分类/标签” + “数据统计” 形成了完整的创作激励闭环。
  • 对于读者:“全局搜索” + “评论/回复” + “关注/通知” 构建了高效的学习和互动路径。
  • 对于管理者:“RBAC权限” + “内容审核工作流” + “仪表盘” 提供了清晰的社区治理工具。

五、测试矩阵(Test Matrix)

为确保软件在目标用户环境下的兼容性与稳定性,我们执行了如下跨平台、跨浏览器测试:

平台/环境 浏览器/设备 主要测试项 测试结果 备注
Windows 11 Chrome 121+ 所有功能、富文本交互、API调用 ✅ 通过 主开发与测试环境,表现最佳。
macOS Safari 17.2+ 响应式布局、CSS兼容性、PWA特性 ✅ 通过 字体渲染、弹性布局表现一致。
iPadOS Safari 分栏布局、横竖屏切换、键盘交互 ✅ 通过 在大屏上利用空间充分,体验好。

六、出口条件(Exit Criteria)达成情况

根据项目计划,团队共同制定的Alpha版本发布出口条件及当前达成情况如下:

出口条件 达成情况 证据与说明
1. 核心用户流程全部畅通 ✅ 已达成 “注册→登录→发布文章→评论→关注”五大核心流程在测试中均一次通过,无阻塞点。
2. 无P0/P1级阻塞性Bug ✅ 已达成 所有发现的3个P0/P1级Bug均已修复并验证关闭。当前Bug清单中无此类活跃Bug。
3. 单元测试覆盖率>80%,API通过率100% ✅ 已达成 单元测试覆盖率为85%,API测试集合68个用例全部通过。
4. 90%以上测试用例已执行并通过 ✅ 已达成 计划内测试用例共计150条,已执行148条(98.7%),通过145条,3条因设计变更关闭。
5. 系统稳定运行≥24小时 ✅ 已达成 测试环境部署后持续运行超过72小时,期间无服务崩溃、数据库连接耗尽等严重问题。

结论:iBlog Community Alpha版本已全面满足预定义的发布出口条件,具备对外发布、进行更广泛用户测试的基础。


Alpha版本发布说明

一、版本信息

二、新增功能

本版本实现了项目规划中的核心功能模块,提供了一个可运行、可用的技术博客社区雏形。

模块 功能点 详细说明
用户系统 注册、登录、JWT鉴权 支持邮箱注册、密码登录。采用JWT令牌进行无状态认证,支持多角色(超级管理员、内容管理员、普通用户、游客)权限体系。
文章管理 文章CRUD、分类标签、Markdown编辑器 完整的文章创作、编辑、发布、删除流程。集成mavon-editor提供优秀的Markdown写作体验,支持代码高亮、图片上传。文章可设置分类与多个标签。
评论系统 评论发表、回复、@提及 支持对文章进行评论,评论支持嵌套回复。使用@用户名语法提及其他用户,被提及者会收到通知。评论支持后台审核。
社交功能 用户关注、点赞、收藏 用户可以关注其他用户,在主页看到关注者的动态。可以对文章进行点赞和收藏操作,并在个人中心查看记录。
后台管理 用户管理、内容审核、数据统计 管理员后台可管理用户角色、审核文章与评论。提供基础的数据概览仪表盘,展示用户数、文章数、访问趋势等。

三、修复的缺陷

在Alpha开发与测试周期中,我们重点修复了以下影响用户体验和系统安全的缺陷:

  1. 权限校验漏洞:修复了普通用户可越权访问后台管理API接口的安全问题。
  2. 内容丢失问题:为文章编辑器增加了基于本地存储的自动草稿保存功能,防止意外丢失。
  3. 数据重复提交:为评论提交按钮增加了防重复点击机制,并后端做了幂等性处理。
  4. 数据分页异常:修复了文章列表在特定条件下分页数据重复或丢失的SQL查询问题。
  5. 邮件服务不可用:修正了邮件配置错误,确保注册验证码邮件可正常发送。

四、运行环境要求

环境 最低要求 推荐配置
操作系统 Windows Server, macOS Windows7
数据库 MySQL 5.7+ MySQL 8.0+
缓存 Redis 5.0+ Redis 6.0+
Java环境 JDK 11 OpenJDK 11/17
Node.js环境 Node.js 16 Node.js 18 LTS
浏览器 Chrome 90, Firefox 88, Safari 14 最新版本

五、安装方法

1. 克隆本项目到本地

text

git clone https://github.com/maple525866/WorkingBlog.git

2. 找到blogserver项目中resources目录下的vueblog.sql文件,在MySQL数据库中执行

3. 根据自己本地情况修改数据库配置,数据库配置在SpringBoot项目的application.yml中

4. 在IntelliJ IDEA中运行blogserver项目

OK,至此,服务器就启动成功了,此时我们直接在地址栏输入 http://localhost:8081/index.html 即可访问我们的项目。

六、已知问题与限制

Alpha版本作为早期预览版,存在一些已知的限制和待优化项,将在后续版本中持续改进:

  1. 私信系统延迟:用户间私信的消息状态(如“已读”)更新可能存在短延迟。
  2. 搜索功能简单:目前搜索基于标题和内容的简单关键词匹配,不支持全文检索、拼音搜索或复杂的相关性排序。
  3. 性能未经压力测试:系统未进行大规模并发用户压力测试,在高负载下的性能表现尚未评估。
  4. 第三方登录缺失:目前仅支持邮箱注册登录,尚未集成GitHub、微信等第三方账号登录方式。

七、发布方式与地址

  • 发布包:提供Docker镜像及完整的源代码压缩包。
  • 反馈渠道:欢迎通过GitHub仓库的 Issues 页面提交任何Bug或建议。
posted @ 2025-12-15 17:16  郭程朗  阅读(6)  评论(0)    收藏  举报