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

努力经营当下,直至未来明朗!

文章目录

  • 一、项目背景
  • 二、项目功能
  • 三、测试计划
    • 一)功能测试
    • 二)自动化测试
    • 三)性能测试
      • 登录测试
      • 难点


普通小孩也要热爱生活!

一、项目背景

  1. 个人博客系统采用前后端分离的方法来实现,同时使用了数据库来存储相关的数据,同时将其部署到云服务器上。前端主要有四个页面构成:登录页、列表页、详情页以及编辑页,以上模拟实现了最简单的个人博客系统。其结合后端实现了以下的主要功能:登录、编辑博客、注销、删除博客、以及强制登录等功能。
  2. 但是该项目没有设计用户注册功能,只能提前在数据库中存储用户信息后经过校验登录;并且用户头像不能自己设定,在进行前端页面的书写过程中已经将头像的图片写为静态了;而用户信息中的文章数以及分类数也没有在后端中具体实现,直接在前端页面中写为了静态的。
  3. 该个人博客系统可以实现个人用户简单的博客记录,时间、标题、内容以及发布者等都可以进行详细地查看。

二、项目功能

该个人博客系统主要实现了以下几个功能:登录、注销、写博客以及删除博客等功能。

  1. 登录功能:用户名以及密码已经在后端写入了数据库,没有实现账户注册功能,即:用户名以及密码是已经存在的。登录成功后就会跳转到列表页面。在右上角存在主页和写博客两个按钮,但是在未登录情况下按下均只会跳转到登录页面。
  2. 列表页面:可以在列表页查看有限数量的博客简介,其包括博客标题、发布时间以及内容概要。在左侧可以看到登录的用户以及文章数、分类数等的模块。在右上角有主页、写博客和注销三个功能:主页即列表页,写博客即博客编辑页,注销即注销用户,回到登录页面
  3. 详情页面:在列表页面点击“查看全文”按钮就会跳转到详情页,此时就可以看到该篇博客的完整内容。在右上角同样有主页、写博客、删除和注销四个功能:删除即删除该篇博客,删除之后就会跳转到列表页面,该篇博客就被成功删除
  4. 写博客:在登录之后的任意界面点击“写博客”之后就会进入博客编辑页面,此时就可以进行博客的编写,点击“发布文章”后就可以成功发布文章,此时就会跳转到列表页

三、测试计划

一)功能测试

  1. 测试用例:
    【项目】个人博客测试报告_第1张图片

  2. 实际执行测试的部分操作步骤/截图
    1)正常登录:

    2)写博客测试:

    3)发布成功并查看详情页

    4)删除博客

    进入详情页,并点击“删除”之后成功删除,如2023-02-27 22:38::53的博客就已经被成功删除。
    5)注销:点击“注销”后回到登录页

二)自动化测试

自动化测试参考:
自动化测试

三)性能测试

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

登录测试

  1. 添加访问地址

  2. 通过开发者工具查看请求发送的格式,以此来进行性能测试脚本的编写。发现:用户名以及密码是使用form表单的形式来进行发送的。
    【项目】个人博客测试报告_第2张图片

  3. 因为用户名以及密码可以有多个,所以可以进行参数化。

  4. 添加事务以及集合点、检查点:注意检查点一般放在请求之前。

  5. 设置迭代次数:为了能够更好地遍历到所有的参数,一定要进行保存。

  6. 检查点:一定注意函数只放在要检查的URL前面,不要随便再往前面放置。(即:只放在需求之前)

  7. 脚本测试通过

  8. 设置并发数量进行性能测试,并导出测试报告以及图表
    1)设置10个虚拟用户,防止电脑崩溃
    【项目】个人博客测试报告_第3张图片
    2)在Controller中设置场景
    【项目】个人博客测试报告_第4张图片
    3)开始进行运行,性能测试开始(运行中+结束截图)
    【项目】个人博客测试报告_第5张图片
    【项目】个人博客测试报告_第6张图片

4)在Analysis中查看性能报告以及报表
① 报告
【项目】个人博客测试报告_第7张图片
② 点击率
【项目】个人博客测试报告_第8张图片
③ 吞吐量
【项目】个人博客测试报告_第9张图片
④ 系统资源
【项目】个人博客测试报告_第10张图片
5)分析系统资源
① 剩余的物理内存近70%,即使用了近30%的内存,对于简单的登录功能来说还是较高的内存使用,还有内存优化的空间。
② 当点击率较大时CPU使用也是达到了一个较高的点,CPU利用率较高。
③ 总之,该性能还有优化的空间。

难点

在VUG中编写脚本时,设置检查点运行一直出错,not found。
1)原因:用户名、密码中因为包含中文,中文会被转码,所以在会一直失败。此时登录直接是失败的,并没有跳转到list列表页面。
2)解决方法:使用Xshell在数据库中新增了两条用户数据,全是非中文字符;然后再VUG中修改变量列表,此时重新进行测试,发现运行通过。
【项目】个人博客测试报告_第11张图片
【项目】个人博客测试报告_第12张图片
3)相关问题:如果直接设置访问list页面的url,并且在该请求之前设置检查点,此时是可以检查到列表页面的元素的。此时明明没有进行登录,但是为什么直接访问列表的url是可以拿到该页面的元素的呢?
:手动请求的haul就相当于是获取资源,所以就能够拿到页面,也就能够获取到页面信息。
使用postman进行直接访问测试,发现是可以拿到该页面的相关元素的。
【项目】个人博客测试报告_第13张图片

你可能感兴趣的:(Note-项目,测试)