博客系统测试用例报告

news2024/9/21 12:35:01

一、项目背景

⼀款基于SpringBoot实现的简易⽹站,功能有⽤⼾注册及登录,博客列表展⽰,博客详情查看,博客编写和⽂章评论 点赞功能采⽤的技术有:HTML、CSS、Mybatis、Token、Ajax等技术。

二、项目功能

1.注册

进入该系统,默认展示登陆页面,点击注册即可进入注册页面,会出现三个输入框分别是:用户名,密码Github地址输入框,等待正确输入点击注册后跳转到登陆页面。在注册页面上注意要展示的组件有:主页跳转按钮、编写博客按钮,均为登陆后才可使用的功能。

UI展示:

2.登录

进入登陆页面,展示三个组件,分别是:主页、写博客、登录卡片,前两功能是登陆后才可以使用

登录涉及到三个参数的校验分别是:用户名,密码和验证码,点击提交按钮,如果校验成功则会跳转到博客展示博客列表页面

UI展示:

3.博客列表展示

登陆成功后,跳转到博客列表展示页面,该页面上展示出用户的个人信息卡片,其中点击Github会直接跳转到个人的Github的页面,展示出主页,写博客,注销等按钮,中间展示所有博客,单条博客展示标题,时间,截取的内容,下方一个查看全文按钮,点击后跳转到详情页面。

UI展示:

4.博客详情展示

展示三个组件分别是:作者简介卡片、导航栏、博客展示卡片,作者简介卡主要包含:作者用户名,用户头像,用户的GitHub,文章数、导航栏主要包含三个按钮,主页,写博客和注销,博客展示包含标题,时间,内容,评论,评论框,点赞数

UI展示:

当作者等于登陆人的时候,会出现博客操作按钮删除和重编辑等

5.退出登录

一键退出功能,删除登陆痕迹并跳转到登陆页面。

三、测试计划

1.功能测试

1.1测试用例设计

测试编号功能测试场景测试前提条件操作预期结果测试优先级实际结果
1注册存在用户,再次注册用户名存在输入已存在的用户和密码点击注册1.提示用户已存在P0
2输入不合法进入注册页面不输入任何数据直接点击注册1.提示未输入用户名
3空密码注册输入未注册过的用户名但不输入密码点击注册1.提示输入密码不合法
4

输入合法

创建用户A

输入正常用户名和密码输入未注册过的用户名和密码,点击注册

1.注册成功,并跳转到登陆页面

2.数据库中产生新的用户

5登录不存在用户用户还未注册输入未注册的用户名,密码,和验证码1.提示用户还未注册P0
6存在用户,但输入出现错误输入用户名不正确输入用户名不合法,点击登录1.提示用户名输入错误
7输入用户名正确

密码错误,验证码正确,点击登录

1.提示密码输入错误
8密码正确,验证码错误,点击登录

1.提示验证码错误,并换一张验证码

9密码正确,验证码正确,点击登录

1.登陆成功

2.跳转到博客列表页面

3.展示用户简介卡篇包含:用户名、用户Github、用户文章篇数、头像

博客列表页面:博客标题、博客时间、博客摘要、查看全文按钮

4.导航栏按钮均可使用

10博客列表展示查看不登陆查看博客列表登陆失败点击主页按钮1.提示未登录,无法跳转到博客展示页面P1
11登录后查看博客列表登陆成功,跳转到博客展示页面

1.用户简介卡:展示用户头像、用户名、用户的文章数等

2.博客列表:展示标题、创建时间、摘要、展示查看全文按钮

3.博客按照时间的先后排序展示

P0
12博客详情页面操作登陆成功后查看博客用户登陆成功点击查看全文

1.跳转到博客详情页面

2.展示:博客标题、创建时间、博客内容、评论框,用户评论

3.评论按照时间的先后排序展示

P0
13评论用户登录并跳转到了博客详情页面点击评论输入“评论一下”点击评论按钮

1.评论区展示“评论一下”的留言,展示评论人和评论时间

P1
14点赞用户登录并跳转到了博客详情页面点击点赞按钮点赞数量加一P1
15删除

1.登录用户就是作者

2.用户登录并跳转到了博客详情页面

点击删除按钮

1.跳转到博客列表页面

2.删除的博客不在展示

3.用户简介卡的文章数量减一

P0
16重新编辑

1.登录用户就是作者

2.用户登录并跳转到了博客详情页面

3.点击重编辑按钮跳转到重编辑页面

1.标题和内容默认自动填入原内容P2
17修改标题,并提交

1.跳转到博客详情页面

2.检查修改展示

P1
18修改内容,并提交

1.跳转到博客详情页面

2.检查修改展示

P0
19编写博客未登录使用编写功能1.点击写博客按钮输入标题和内容提交提示未登录,发布失败P1
20登陆成功使用编写功能不输入,直接提交提示标题未输入发布失败P1
21输入标题提交提示标题未输入发布失败P1
22输入标题和内容提交

发布成功跳转到博客列表页面,

展示新发布的博客

P0
23退出登录叉掉页面30min内再打开页面点击主页直接进入,不用登陆P1
24点击退出登录30min内在打开页面提示未登录P1

1.2测试用例脑图

 2.测试截图

2.1注册

2.2登录

2.3跳转到博客列表页面

 2.3博客详情页面

2.4编写

 2.自动化测试

2.1自动化测试脑图

2.2代码编写 

2.2.1所用依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>JunitTest</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
        <!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.141.59</version>
        </dependency>
        <!--        截图-->
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
            <version>2.11.0</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api -->
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-api</artifactId>
            <version>5.9.1</version>
        </dependency>
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-params</artifactId>
            <version>5.9.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-params -->
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-params</artifactId>
            <version>5.9.1</version>
        </dependency>
        <dependency>
            <groupId>org.junit.platform</groupId>
            <artifactId>junit-platform-suite</artifactId>
            <version>1.9.1</version>
            <scope>test</scope>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.junit.platform/junit-platform-suite -->
        <dependency>
            <groupId>org.junit.platform</groupId>
            <artifactId>junit-platform-suite</artifactId>
            <version>1.9.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-engine -->
        <dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter-engine</artifactId>
            <version>5.9.1</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

</project>
2.2.2创建的包和文件

2.2.3部分代码(注册,登录,编写)

JunitTest/src/main/java/blogTest · 紫微星/测试学习代码 - 码云 - 开源中国 (gitee.com)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2034804.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

仓颉编程入门 -- 泛型概述 , 如何定义泛型函数

泛型概述 , 如何定义泛型函数 1 . 泛型的定义 在仓颉编程语言中&#xff0c;泛型指的是参数化类型&#xff0c;参数化类型是一个在声明时未知并且需要在使用时指定的类型。类型声明与函数声明可以是泛型的。最为常见的例子就是 Array、Set 等容器类型。以数组类型为例&#xf…

inscode的会员计划的python环境问题【版本3.9.16】无法升级python

购买了inscode的会员计划后,部署python项目 遇到python环境无法升级的问题 inscode的会员计划的环境是3.9.16,但是项目用的例子需要3.10以上的版本,最终本人也无法完全解决,虽然手动安装了python3.10,一切都可以实现,但是最后环境自动恢复到3.9版本,导致自己手动配置的全…

速成cesium而忽略前端基础,你可能会遇到这些坑!

cesium作为一个功能强大的开源三维地球框架&#xff0c;做出来的效果受到众多企业的青睐。然而&#xff0c;许多小伙伴们都 希望能够快速掌握cesium&#xff0c;从而忽略了前端基础知识的重要性。这种急功近利的学习方式往往会导致一些不良后果&#xff1a; 1. 前端基础太薄弱…

【leetcode】找出与数组相加的整数II( 过程反思 思路详解 )

题目分析&#xff1a; 题目要咱们除掉nums1中的两个数&#xff0c;从另一个角度理解就是找到nums1中与nums2元素匹配的nums1.size() - 2个数 由题目可知&#xff0c;二者元素具有相差 x 的一一对应关系&#xff0c;如此&#xff0c;不难想到应首先通过对二者排序来构建大致的匹…

用Python制作开心消消乐游戏|附源码

制作一个完整的“开心消消乐”风格的游戏在Python中是一个相对复杂的项目&#xff0c;因为它涉及到图形界面、游戏逻辑、动画效果以及用户交互等多个方面。不过&#xff0c;我可以为你提供一个简化的版本和概念框架&#xff0c;帮助你理解如何开始这个项目&#xff0c;并提供一…

仪表板展示|DataEase看中国:2024巴黎奥运会中国体育代表团战绩报告

背景介绍 北京时间2024年8月12日凌晨&#xff0c;巴黎奥运会闭幕。在本届奥运会中&#xff0c;我们不仅见证了许多新世界纪录的诞生&#xff0c;更看到了中国体育的强大实力与无限潜力。中国运动健儿们卓越的表现和顽强的拼搏精神&#xff0c;不但让国人为之自豪&#xff0c;也…

普元EOS学习笔记-高低开结合方式实现图书的增删改查

1 前言 在《普元EOS学习笔记-低开实现图书的增删改查》的文章中&#xff0c;我描述了在精简应用中&#xff0c;基于低开实现图书分类的增删改查的操作&#xff0c;是为了简单展示EOS低开的能力。 低开天生会有一些问题&#xff0c;这个咱就不啰嗦了。而且&#xff0c;那篇文章…

(kali关怀版)kali调整字体图标显示大小

字体大小调整(图标字体) 字体在左上角搜apprence 图标大小调整 图标在桌面右键点apprence 任务栏大小调整 任务栏在上面右键&#xff0c;选择panel preference 终端字体大小调整 终端字体用ctrl和加号减号进行缩放 属于是kali关怀版了:) 还可指定锁屏和休眠时间&#…

科研绘图系列:Python语言箱线图

介绍 不同分组的python语言箱线图 加载Python包 import sys import pandas as pd import numpy as np import scipy as sp from scipy import stats import randomimport seaborn as sns import matplotlib.pyplot as plt from matplotlib

杂项复现-中间件

一、Apache HTTPD 多后缀解析漏洞 一、Apache HTTPD 多后缀解析漏洞 在有多个后缀的情况下&#xff0c;只要一个文件含有.php后缀的文件即将被识别成PHP文件&#xff0c;没必要是最后一个后缀。利用这个特性&#xff0c;将会造成一个可以绕过上传白名单的解析漏洞。 1、上传一个…

virtualbox 启动虚拟机后无法进入系统桌面、内存错误

我在virtualbox中创建了一个linux虚拟机、一个win10虚拟机&#xff0c;两个都在使用中偶尔遇到过启动问题。 解决方法1&#xff1a;先无界面启动&#xff0c;再显示界面 linux虚拟机 虚拟机启动后&#xff0c;进入桌面不到两分钟&#xff0c;就报错内存不可访问&#xff0c;…

大型、复杂、逼真的安全服和安全帽检测:数据集和方法

智能升级工地安全&#xff1a;SFCHD数据集与SCALE模块介绍 在人工智能&#xff08;AI&#xff09;技术飞速发展的今天&#xff0c;其在建筑工地安全领域的应用正逐渐展现出巨大潜力。尤其是高风险行业如化工厂的施工现场&#xff0c;对工人的保护措施要求极为严格。个人防护装…

PyTorch 基础学习(3) - 张量的数学操作

下面是关于PyTorch中常见数学操作的概述和教程&#xff0c;包括逐点运算、比较操作、线性代数操作等&#xff0c;突出每个操作的重点用法和示例。 逐点操作 (Pointwise Operations) 1. torch.abs 功能: 计算输入张量的每个元素的绝对值。用法: torch.abs(input)示例:import …

Oracle 专用/共享服务器连接模式(Dedicated/Shared Server)

当会话通过客户端连接到Oracle数据库时&#xff0c;根据服务器处理请求方式的不同&#xff0c;可以有两种连接模式&#xff0c;一种称为专用服务器连接&#xff08;Dedicated Server&#xff09;&#xff0c;另外一种称为共享服务器连接&#xff08;Shared Server&#xff09;。…

企业源代码也需要加密!十款好用的源代码加密软件排行榜

在当今竞争激烈的商业环境中&#xff0c;企业的源代码是其核心资产之一。为了保护这些宝贵的知识产权不被泄露&#xff0c;源代码加密成为了众多企业的重要举措。2024 年&#xff0c;市面上出现了众多功能强大的源代码加密软件。接下来&#xff0c;就让我们一同来探索十款备受好…

基于A*搜索算法的坦克动荡2路径规划问题

前言 《坦克动荡2》(Tank Trouble 2)是一款适用于PC平台的射击类网页游戏。游戏设定在一个迷宫般的竞技场中&#xff0c;玩家需要控制坦克&#xff0c;在对手摧毁自己之前先摧毁对方。本题目旨在各位自己实现A-star算法&#xff0c;并为接下来学习并自行编写替换nav2中的Plann…

【Linux】详解自定义Shell管道 | 构建简易进程池

目录 续&#xff1a;通信 4 种情况 应用场景 1. 自定义 shell 管道 1. 包含头文件 2. 解析命令函数 详细步骤 3. 执行命令函数 4. 主函数 总结 2. 使用管道实现一个简易版本的进程池 代码结构 代码实现 channel.hpp tasks.hpp main.cc 子进程读取任务&#xff…

企业数据接口:被执行人(人员)查询

根据搜索关键字、名称等参数&#xff0c;获取被执行人相关信息 批量获取企业信息

摄影曝光:光圈大小认知

写在前面 学习整理《摄影曝光&#xff1a;拍出好照片的49个关键技法》读书笔记博文内容涉及光圈&#xff0c;景深认知 &#xff0c;以及光圈和镜像的选择适合小白认知理解不足小伙伴帮忙指正 &#x1f603;,生活加油 99%的焦虑都来自于虚度时间和没有好好做事&#xff0c;所以唯…

基于hadoop的网络流量分析系统的研究与应用

目录 摘要 1 Abstract 2 第1章 绪论 3 1.1 研究背景 3 1.2 研究目的和意义 4 1.2.1 研究目的 4 1.2.2 研究意义 6 1.3 国内外研究现状分析 7 1.3.1 国内研究现状 7 1.3.2 国外研究现状 9 1.4 研究内容 11 第2章 Hadoop技术及相关组件介绍 12 2.1 HDFS的工作原理及…