【测试项目】——个人博客系统测试报告

📖 前言:云记个人博客系统是一个便捷的在线内容管理平台,它通过前后端分离的方式实现,目的是为用户提供一个高效、灵活并且易于使用的博客创作环境。实现这一目标需要全面的功能测试和稳定的质量保证。


🕒 1. 项目背景

该个人博客系统采用前后端分离的方法来实现,并使用MySQL数据库存储数据。它支持查看个人用户的博客记录,包括时间、标题、内容和发布者等详细信息。

然而,该系统未设计注册功能,用户信息需预先在数据库中录入才能登录;用户头像已设为前端页面的静态图片,无法自定义;文章和分类的数量也未在后端实现,而是直接在前端页面静态显示。

🕒 2. 项目功能

本个人博客系统主要包含以下功能:登录、注销、撰写博客及删除博客等。

  • 登录功能:用户名和密码已预设于后端数据库中,暂不支持账户注册,即:用户需使用已存在的用户名和密码登录。登录成功将跳转至博客列表页面。未登录状态下,右上角的主页和写博客按钮点击后会重定向至登录页面。
  • 列表页面:列表页展示了一定数量的博客摘要,包括标题、发布时间和内容概览。左侧显示已登录用户信息、文章和分类数量等。右上角包含主页、写博客和注销三项功能:主页即列表页,写博客为博客编辑页,注销则会退出用户并返回登录页面。
  • 详情页面:在列表页点击“查看全文”会跳转至详情页,展现博客全文。右上角设有主页、写博客、删除和注销四项功能:删除可移除博客,操作后页面会返回列表页,且博客被永久删除。
  • 写博客:登录状态下任意页面点击“写博客”将进入编辑界面,完成博客撰写并点击“发布文章”后,文章将被发布且页面会跳转至列表页。

🕒 3. 设计测试用例

登录模块:
请添加图片描述

博客列表模块:
请添加图片描述

博客详情页模块:
请添加图片描述

博客编辑页模块:
请添加图片描述

🕒 4. 部分功能测试

🕘 4.1 登录页面

在这里插入图片描述

测试场景1: 输入正确的账号和密码,点击“登录”按钮

预期结果:登陆成功,跳转到博客列表页
实际结果:登陆成功,跳转到博客列表页

在这里插入图片描述

测试场景2:输入正确的账号,输入错误的密码,点击“登录”按钮

预期结果:登录失败,弹出对应提示框
实际结果:登录失败,弹出错误页面
在这里插入图片描述

测试用例3:账号密码为空,点击“登录”按钮

预期结果:登录失败,弹出对应提示框
实际结果:登录失败,弹出错误页面
在这里插入图片描述

🕘 4.2 博客列表页

测试场景1: 登录状态下没有发布过博客

预期结果:列表没有博客信息
实际结果:列表没有博客信息
在这里插入图片描述

测试场景2:登录状态下发布一篇博客,标题为“自动化测试”

预期结果:博客列表页展示一篇标题为“自动化测试”的博客信息
实际结果:博客列表页展示一篇为“自动化测试”的博客

请添加图片描述

🕘 4.3 发布博客

测试场景1:登录状态下,输入标题,输入正文,点击“发布文章”按钮

预期结果:发布博客成功,跳转到博客列表页展示相关信息
实际结果:发布博客成功,跳转到博客列表页

请添加图片描述

测试场景2:未登录状态下,无法发布博客

预期结果:弹出相应提示框,跳转登录页
实际结果:直接跳转登录页

在这里插入图片描述

🕘 4.4 删除博客

测试场景:登录状态下且当前博客详情是当前登录用户,点击删除

预期结果:删除成功
实际结果:删除成功

在这里插入图片描述

🕘 4.5 注销

测试场景:在已登录状态下点击 “ 注销 ” 按钮

预期结果:退出成功,跳转到登录页
实际结果:退出成功,跳转到登录页

请添加图片描述

🕒 5. 自动化测试

🔎 【测试项目】——个人博客系统自动化测试

🕒 6. 性能测试

使用loadrunner进行简单性能测试:针对登录、编写并发布博客以及删除博客、注销等功能进行简单的性能测试。
然后在实现的过程中,插入集合点以及事务等,并通过设置来实现用户的并发操作。

a)访问博客登录页;

b)执行登录;

c)进入首页。

🔎 【测试】——Loadrunner 介绍与使用

🕘 6.1 编写性能测试脚本

首先创建一个Web性能测试脚本:

在这里插入图片描述

在这里插入图片描述

开始录制:
在这里插入图片描述

Action()
{
	// 开始事务1
	lr_start_transaction("index_trans");
 
	// 1.访问博客系统网页
	web_url("web_url",
		"URL=http://127.0.0.1:8080/blog_system/login.html",
		"TargetFrame=",
		"Resource=0",
		"Referer=",
		LAST);
 
	// 登录的集合点
	lr_rendezvous("login_rendezvous");
 
	// 开始事务2
	lr_start_transaction("login_trans");
 
	// 2.输入登录账号和密码
	web_submit_form("web_submit_form",
		ITEMDATA,
		"Name=userName", "Value={username}", ENDITEM,
		"Name=password", "Value={password}", ENDITEM,
		LAST);
 
	// 结束事务2
	lr_end_transaction("login_trans", LR_AUTO);
	
	// 结束事务1
	lr_end_transaction("index_trans", LR_AUTO);
	return 0;
}

执行结果和分析:
在这里插入图片描述

🕘 6.2 创建测试场景

针对我们已经编写好的脚本打开controller工具,创建测试脚本,设置并发数为3:

设置执行策略如下:
在这里插入图片描述

场景运行结果:

在这里插入图片描述

🕘 6.3 生成测试报告

在这里插入图片描述

测试报告图表如下:

  1. 虚拟用户运行图:
    在这里插入图片描述

作用:通过显示的虚拟用户数量可以判断出哪个时间段服务器负载最大(上图01:36 ~ 04:40负载最大)。

  1. 点击数图(每秒点击率)
    在这里插入图片描述

作用:通过点击率可以判断出某时间段内服务器的负载。

  1. 吞吐量图
    在这里插入图片描述

Q1:为什么吞吐量图和点击数图相似,但是吞吐量图要滞后一点?
在这里插入图片描述

答:因为吞吐量表示的是响应返回的资源数量,肯定是现有请求再有返回。

Q2:如果请求变多但是吞吐量没变化,原因是什么?

答:

  • 服务器响应太慢,来不及反应;
  • 压力没有到服务器;
  • 服务器设计一定的阈值(到达阈值以后,虽然也收到了请求,但是服务器不会做任何处理),保证了服务器不会因为并发量过大而出现宕机的情况;
  1. 事务图
    在这里插入图片描述

  2. 平均事务响应时间图
    在这里插入图片描述

作用:可以观察到,虚拟用户在性能测试中,每秒在服务器上命中的次数,可以根据命中的次数评估虚拟用户生成的负载量。


OK,以上就是本期知识点“个人博客系统测试报告”的知识啦~~ ,感谢友友们的阅读。后续还会继续更新,欢迎持续关注哟📌~
💫如果有错误❌,欢迎批评指正呀👀~让我们一起相互进步🚀
🎉如果觉得收获满满,可以点点赞👍支持一下哟~

❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值