当前位置: 首页 > news >正文

基于SpringBoot的博客系统测试报告

 一、编写目的

本报告为博客系统测试报告,本项目模拟了csdn,实现了包括了用户登录,发布博客文章,查看博客等功能。 

二、项目背景

博客系统采用前后端分离的方法来实现,同时使用了数据库来存储相关的数据,同时将其部署到云服务器上。

前端主要有三个页面构成:登录页、博客详情页、博客正文页。其结合后端实现了以下的主要功能:登录、增加博客文章,修改博客正文以及退出登录等功能。
 

三、相关模块

1.登录模块:登录时用Session获取用户表,在获取用户id来使后端将用户信息存储在Session中,在登录时通过获取用户对应的账号以及密码进行校验,如果都匹配则给予token令牌放行,登录通过,如果校验失败则需要重新输入登录信息,再次进行登录校验。

2.主页模块:用户通过请求发送数据到后端,后端获取抽奖人员id并通过RequestMapping注解来处理前端的请求并返回响应。

3博客增删改模块:通过后端实现了发布博客,修改博客正文,查看博客正文等功能。

四、测试环境

硬件配置

内存:8.00 GB

软件配置

Windows11,Chrome浏览器(功能测试)

拦截统一:通过拦截器对http请求进行统一拦截并采用统一的响应数据格式。 

五、测试功能

该在线抽奖系统主要实现了以下几个功能:登录,查看博客列表,查看博客正文,修改博客正文。

登录功能:

管理员登录页面没有实现注册功能,用的是原先sql脚本里注入的数据。登录成功后就会跳转到博客详情页面。在右上角有退出登录按键,但是在未登录情况下强制访问页面会强制返回到登录页。

博客详情页面: 

博客详情页简单展示了用户信息,发表过的所有博客,点击博客列表进入正文查看博客内容。 

博客编辑页面: 

查看博客正文点击编辑,或者点击写博客进入博客编辑页面。

个人Gitee访问:

点击个人Gitee访问GitHub。

六、测试过程

功能测试:

测试用例如下图

 

 实际执行测试的部分操作步骤/截图

1.正常登录

2.登录成功进入博客系统页面

3.点击写博客,进入博客正文编辑页面

4.点击查看全文,查看博客正文

5.点击删除,删除博客正文

 

6.点击写博客,进入博客正文编辑页面

 

7.发布博客

8.个人Git地址页

点击跳转到个人Git页面

自动化代码编写:

根据脑图进行测试用例的编写,可以按照每个页面一个测试类的方式来组织。

首先,需要单独创建一个公共属性类,以方便进行代码复用。

接下来,在各个测试类中进行测试用例的编写。为了便于运行以及修改,可以使用测试套件。此外,启动和现场截图是频繁进行复用的操作,因此可以单独创建一个类进行存储,并在需要的时候进行调用。

在编写测试用例时,需要注意添加隐式等待,以确保页面能够正确加载和显示。这样可以有效避免因页面未完全加载导致的测试失败情况。

总之,按照脑图的规划,可以将测试用例按照页面进行分组,结合测试套件和公共属性类,以及单独存储启动和现场截图的类,来进行测试用例的编写和组织。

1. 添加相关依赖pom.xml

<dependencies>
<!--        添加selenium依赖-->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>4.0.0</version>
        </dependency>
 
        <!--        保存屏幕截图需要用到的包-->
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.6</version>
        </dependency>
 
        <!--        添加junit5依赖-->
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter</artifactId>
            <version>5.8.2</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.junit.platform</groupId>
            <artifactId>junit-platform-suite</artifactId>
            <version>1.8.2</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

2. 新建包并在包下创建测试类以及公共类
以下是所建立的是common公共包和Tests测试包:

1公共类

创建驱动、保存现场截图
注意:在保存现场截图的时候命名是按时间来进行文件夹的划分,然后图片的名称要体现出测试类的类名,方便进行问题的追溯。
注意文件名的动态获取,注意时间格式的设置。

 2登录页面测试 

 创建驱动,并打开页面
 测试页面是否正常打开
 测试正常登录:多参数测试
 测试用户注册:多参数测试 

3编辑页测试

 测试能否正确添加正文内容

 测试正文是否可以正确发布

4详情页测试

测试点击编辑是否正确跳转到正文编辑页

测试点几删除是否删除博客正文

 5点击主页

测试点击博客是否正常查看博客正文

 性能测试:

使用Jmeter进行简单性能测试:针对登录、博客列表页、博客详情页,进行简单的性能测试。对项目功能进行性能测试

 

相关文章:

  • 多模态论文笔记——Coca
  • 回答 | 图形数据库neo4j社区版可以应用小型企业嘛?
  • 手撕算法(定制整理版2)
  • 基于事件驱动和策略模式的差异化处理方案
  • Python动态渲染页面抓取之Selenium使用指南
  • 基于 51 单片机的 PWM 电机调速系统实现
  • 【AI提示词】波特五力模型专家
  • Linux常用命令详解(上):目录与文件操作及拷贝移动命令
  • OpenMCU(六):STM32F103开发板功能介绍
  • mac M2下的centos8:java和jenkins版本匹配,插件安装问题
  • 电厂除灰系统优化:时序数据库如何降低粉尘排放
  • 支付宝API-SKD-GO版
  • HBase进阶之路:从原理到实战的深度探索
  • 基于LVS和Keepalived实现高可用负载均衡架构
  • Spring Data Elasticsearch 中 ElasticsearchOperations 构建查询条件的详解
  • Kotlin 异步初始化值
  • P2P架构
  • 用 AltSnap 解锁 Windows 窗口管理的“魔法”
  • lua入门语法,包含安装,注释,变量,循环等
  • NY115NY121美光科技芯片NY122NY130
  • 从普通人经历中发现历史,王笛解读《线索与痕迹》
  • 三大股份制银行入局AIC,一级市场再迎“活水”
  • 韩国大选连发“五月惊奇”:在野党刚“摆脱”官司,执政党又生“内讧”
  • 媒体谈法院就“行人相撞案”道歉:执法公正,普法莫拉开“距离”
  • 印度外交秘书:印巴军方将于12日再次对话
  • 时代中国控股:前4个月销售额18.1亿元,境外债重组协议押后聆讯至5月底