目录
一、项目背景
论坛系统 技术栈:SpringBoot+SpringMVC+MyBatis+Redis
1.1 项目简介
此项目构建了一个基于 B/S 架构的论坛系统,其目标是为用户提供一个交流、分享和讨论信息的平台。在这个系统 中,用户可以创建账户,发布自己的帖子,回复其他用户的帖子,同时也可以浏览和评论其他用户的帖子。该论坛系统分 为多个板块,每个板块专注于不同的主题,例如后端开发、前端设计等。
1.2 核心功能
用户管理:系统能够轻松创建账户,并填写个人资料。通过登录到论坛系统,用户可以积极参与讨论。
信息管理:系统支持在个人中心页面随时修改用户的个人信息,以保持准确和最新的信息。
帖子管理:赋予用户创建帖子、编辑和删除自己的帖子的权限。可以自由地编写标题、内容和选择所属板块等信息。
评论管理:用户可以在帖子下方发表评论,也能回复其他用户的评论。这种交互形式促进了深入交流和意见交换。
私信管理:用户之间可以相互发送站内信,这提供了一种私密的交流方式,甚至可以进行一对一的私密消息交流。
性能优化:系统支持分布式部署和多线程编程,以确保系统运行效率的最大化。
点赞与浏览:用户可以通过板块浏览寻找感兴趣的帖子,并在帖子中对内容进行点赞,这是一种积极的互动方式。
源码链接:https://gitee.com/dong-guozhen/forumhttps://gitee.com/dong-guozhen/forum
项目展示:http://114.132.70.85:58080/sign-in.htmlhttp://114.132.70.85:58080/sign-in.html 登录用户名 admin 密码 admin123
1.3 项目要点
- 使用统⼀返回格式+全局错误信息定义处理前后端交互时的返回结果。
- 使用@ControllerAdvice+@ExceptionHandler实现全局异常处理。
- 使用拦截器实现用户登录校验。
- 集成Swagger实现⾃动⽣成API测试接口。
- 使用Md5+加盐算法对密码进行加密处理。
- 项目中多处使用多线程技术,提高项目性能。
- 使用Redis存储用户session信息,支持分布式部署。
二、测试计划
2.1 测试环境
操作系统:windows10专业版
项目运行时环境:IIntelliJ IDEA 2021.1.3 JDK1.8、MySQL5.7
浏览器:Google Edge FireFox
访问链接:http://114.132.70.85:58080/sign-in.html
测试技术:主要进行手工测试和单元测试
测试人员:本人
2.2 测试用例编写
2.2.1 功能测试
2.2.2 非功能测试
2.3 功能测试操作步骤
2.3.1 对注册页面进行测试
场景1:
输入的用户名已经被注册,点击注册
预期结果:提示用户已经存在,注册失败
实际结果:提示用户已经存在,注册失败
场景2:
两次输入的密码不一致,点击注册
预期结果:提示请检查确认密码,注册失败
实际结果:提示请检查确认密码,注册失败
场景3:
输入的用户没有被注册,并且两次输入的密码一致,点击注册
预期结果:注册成功,跳转到登录页面
实际结果:注册成功,跳转到登录页面
2.3.2 对登录页面进行测试
场景1:
输入用户名正确,密码错误,点击登录,登录失败
预期结果:用户名或密码错误,登录失败
实际结果:用户名或密码错误,登录失败
场景2:
输入用户名错误,密码正确,点击登录,登录失败
预期结果:用户名或密码错误,登录失败
实际结果:用户名或密码错误,登录失败
场景3:
输入用户名和密码全部正确,点击登录
预期结果:登录成功
实际结果:登录成功
2.3.3 对首页页面进行测试
场景1:
未登录状态下,跳转到登录页面
预期结果:跳转到登录页面
实际结果:跳转到登录页面
场景2:
登录状态下,在首页显示板块列表和帖子列表
预期结果:显示帖子列表和板块列表
实际结果:显示帖子列表和板块列表
2.3.4 对帖子发布进行测试
场景1:
未登录状态下,发布帖子,跳转到登录页面
预期结果:跳转到登录页面
实际结果:跳转到登录页面
场景2:
登录状态下,点击发布帖子,进入帖子编辑页
预期结果:进入帖子编辑页
实际结果:进入帖子编辑页
场景3:
登录状态下,点击发布帖子,选择帖子板块,输入标题,不输入正文
预期结果:提示请输入帖子内容
实际结果:提示请输入帖子内容
场景4:
登录状态下,发布帖子,选择板块后,输入帖子正文,不输入贴子标题
预期结果:提示请输入标题
实际结果:提示请输入标题
场景5:
进入帖子发布页面,输入帖子标题,输入帖子正文,点击发布
预期结果:提示发布成功,跳转到首页
实际结果: 提示发布成功,跳转到首页
2.3.5 对帖子修改进行测试
场景1:
未登录状态下,跳转到登录页面
预期结果:跳转到登录页面
实际结果:跳转到登录页面
场景2:
登录状态下,点击修改按钮,进入修改页面
预期结果:进入修改页面
实际结果:进入修改页面
场景3:
登录状态下,进入修改页面,输入要修改的标题或者正文
预期结果:修改成功
实际结果:修改成功
2.3.6 对帖子删除进行测试
场景1:
未登录状态下,跳转到登录页面
预期结果:跳转到登录页面
实际结果:跳转到登录页面
场景2:
登录状态下,点击删除,跳出确认删除按钮
预期结果:跳出确认删除按钮
实际结果:跳出确认删除按钮
2.3.7 对帖子点赞进行测试
场景1:
未登录状态下,跳转到登录页面
预期结果:跳转到登录页面
实际结果:跳转到登录页面
场景2:
登录状态下,点击点赞按钮,点赞数量加1
预期结果:点击点赞按钮,点赞数量+1
实际结果:点击点赞按钮,点赞数量+1
这里只给出部分功能测试,其他测试不在一一展示.