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

这个作业属于哪个课程 计科23级12班
这个作业要求在哪里 作业要求
这个作业的目标 完成 Alpha 版本的测试与发布

项目仓库:https://github.com/iikachan/noteforces

一、Alpha 版本测试报告

1. 测试目的与测试范围

本次测试针对 NoteForces 简易在线笔记系统的 Alpha 版本 进行,测试目标是验证系统在核心功能已实现的前提下,是否具备基本可用性、稳定性和可发布性,为后续 Beta 版本的功能扩展和性能优化提供依据。

测试范围主要包括:

  • 用户管理模块(注册、登录、密码修改)
  • 笔记管理模块(新增、编辑、删除、Markdown 渲染、分类与搜索)
  • 笔记分享模块(分享链接生成与关闭)
  • 管理员功能(用户管理、笔记管理、系统日志)
  • 前后端交互与数据持久化
  • 基本异常处理与安全性校验

2. 测试过程概述

测试过程分为以下几个阶段:

  1. 单元测试阶段
    后端对 Flask 路由、数据库操作接口进行基础测试,重点关注用户认证、笔记 CRUD 接口的正确性。

  2. 功能测试阶段
    通过浏览器手动操作,逐项验证需求文档中定义的功能是否符合预期。

  3. 场景测试阶段
    模拟不同类型用户(普通用户、协作者、管理员)的实际使用流程。

  4. 回归测试阶段
    在 Bug 修复后,对相关功能重新测试,确认未引入新的问题。


3. Bug 统计与分类

在 Alpha 测试过程中共发现 15 个 Bug,分类情况如下:

(1)已修复的 Bug(共 9 个)

  • 用户注册时未对重复用户名进行校验(2 个)
  • 登录接口在密码错误时返回状态码不统一(1 个)
  • Markdown 编辑器在代码块中输入特殊字符导致渲染异常(2 个)
  • 删除笔记后列表未即时刷新(前端状态同步问题)(2 个)
  • 分享链接关闭后仍可短时间访问(缓存未清理)(2 个)

以上问题均已在 Alpha 版本发布前修复,并通过回归测试验证。


(2)不能重现的 Bug(共 2 个)

  • 个别测试环境下首次加载页面出现短暂白屏
  • 标签搜索偶发返回空结果

该问题在多次复现尝试中未再次出现,初步判断可能与测试时的网络波动或浏览器缓存有关,暂未定位到明确触发条件。


(3)“产品就是这样设计的,不是 Bug”(共 2 个)

  • 管理员可以查看并删除所有用户的笔记
  • 管理员操作不支持撤销

上述行为符合系统设计初衷,属于管理员权限范围内的正常功能。


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

  • 在极端并发条件下(大量同时编辑同一笔记),内容覆盖问题

由于 Alpha 版本未引入复杂的协同编辑算法(如 OT 或 CRDT),该问题超出当前项目范围,暂不计划修复。


(5)应修复但延迟到下一个版本(共 1 个)

  • 分享链接未设置过期时间

该问题不影响 Alpha 版本核心功能,将在 Beta 版本中引入链接有效期与访问次数限制。


4. 场景测试(Scenario Testing)

(1)预期用户类型及使用方式

  1. 普通学生用户

    • 记录课程笔记
    • 使用 Markdown 整理学习内容
    • 在不同设备间同步笔记
  2. 教师或学习小组成员

    • 分享笔记链接给他人
    • 多人协作查看同一笔记
  3. 管理员

    • 管理用户账号
    • 处理违规或异常笔记
    • 查看系统运行日志

(2)用户需求与目标

  • 快速、安全地记录笔记
  • 支持结构化排版(Markdown)
  • 方便分享与协作
  • 笔记数据可靠、不易丢失

(3)功能组合满足需求的方式

  • 用户通过注册与登录模块进入系统
  • 使用笔记管理模块完成内容编辑与分类
  • 利用分享模块生成链接实现协作
  • 管理员通过后台模块保障系统安全与稳定运行

5. 测试矩阵(Test Matrix)

测试环境如下:

项目 配置
操作系统 Debian GNU/Linux
浏览器 Chrome 143
后端运行环境 Python 3.14
前端运行环境 OpenResty
硬件配置 8GB 内存,Cortex-A72 及以上 CPU

6. Alpha 版本出口条件(Exit Criteria)

在满足以下条件后,团队认为系统已具备 Alpha 发布标准:

  • 所有核心功能(用户、笔记、分享、管理)可正常使用
  • 严重功能性 Bug 数量为 0
  • 已修复 Bug 通过回归测试
  • 系统在主流浏览器中表现一致
  • 存在的问题不影响基本使用流程

二、Alpha 版本发布说明

1. 版本概述

版本名称: NoteForces Alpha
版本类型: 内部测试版本
发布日期: Alpha 阶段发布


2. 本版本已实现功能

  • 用户注册、登录、密码修改
  • 在线笔记新增、编辑、删除
  • Markdown 实时预览与渲染
  • 笔记标签分类与关键词搜索
  • 笔记分享链接生成与关闭
  • 管理员用户与笔记管理功能

功能界面示意:

  • 登录页
    image

  • 主页与导航栏
    image

  • 笔记详情页
    image
    image

  • 用户设置页
    image

  • 用户管理页
    image


3. 本版本修复的缺陷

  • 修复重复用户名注册问题
  • 修复笔记删除后前端不同步问题
  • 修复分享链接关闭后仍可访问的问题
  • 优化 Markdown 渲染稳定性

4. 运行环境要求

  • Python 3.12 及以上
  • Node.js 20 及以上
  • 支持现代浏览器(Chrome / Edge / Firefox)
  • 操作系统不限(Windows / Linux / macOS)

5. 安装与部署方式

  1. 后端部署

    • 安装依赖:pip install -r requirements.txt
    • 启动服务:python app.pygunicorn -w 4 -b 0.0.0.0:5000 app:app
    • (生产环境)配置反向代理:将路径 /api 请求转发到本机 5000 端口上的后端服务
  2. 前端部署

    • 安装依赖:yarn
    • 启动开发服务器:yarn dev
    • (生产环境)构建用于部署或发布的生产环境代码:yarn build
    • (生产环境)配置反向代理:将根路径 / 的请求映射到前端 yarn build 生成的静态构建产物,对外提供前端页面访问服务。

6. 已知问题与限制

  • 不支持复杂的多人实时协同编辑
  • 分享链接无有效期限制
  • SQLite 在高并发场景下性能有限

7. 发布方式与地址


三、总结

NoteForces Alpha 版本已完成系统核心功能的实现与验证,能够满足基本的在线笔记记录与分享需求。通过本次测试与发布,团队对系统架构、前后端协作流程以及测试方法有了更加深入的理解,为后续 Beta 版本的功能扩展与性能优化奠定了基础。

posted @ 2025-12-14 21:15  ikachan  阅读(3)  评论(0)    收藏  举报