在线音乐服务器测试报告

article/2025/7/30 13:38:38

1.项目背景

此项目主要用于模拟市面上主流的音乐软件的主要功能,提高自己的开发和测试能力。此项目采用的技术栈是SpringBoot + MyBatis + SpringMVC + Mysql实现的,为了实现简单,方便测试,此项目没有注册功能,数据提前存储在数据库当中。

2.项目主要功能介绍

此项目主要包括四个页面:登录页,列表页,收藏页,上传页。主要的功能包括登录,添加歌曲,删除歌曲(支持批量删除)查询歌曲(支持模糊查询),播放音乐,收藏喜欢歌曲,删除喜欢的歌曲等。

3.项目演示

3.1登录页:

3.2列表页:

 3.3上传页:

3.4 收藏页:

4.设计测试用例

4.1登录页:

4.2列表页:

4.3上传页:

4.4喜欢列表页:

5.功能测试

5.1登录页

用例1:输入正确的用户名和密码。

预期:跳出登录成功提示框,点击确定进入列表页。

符合预期,用例通过。 

用例2:用户名或者密码其中一个为空。

预期:弹出提示框用户名或者密码不能为空,点击确定,重新输入。

符合预期,用例通过。

用例3:用户名或者密码其中一个为空。

预期:提示弹框出现后,点击确认,立即清空输入框里面的内容,重新输入。

 此用例未通过,建议前端代码清空用户名,密码输入框内容,光标重新聚焦到用户名输入框。

用例4:用户名或密码长度设置特别短。

预期:提示用户名或密码长度不符合要求,请重新输入。

此用例不通过,建议前端人员对用户名,密码输入框做长度限制。

5.2列表页

用例1:登录成功后能够正常显示列表页

预期:登录成功之后,立即正常跳转到列表页,并正常显示。

符合预期,此用例通过。

用例2:点击添加歌曲。

预期:正常跳转到上传页。

符合预期,用例通过。

用例3:在歌曲名输入框输入歌曲名,点击查询按钮。

预期:如果输入歌曲存在,则查询到该歌曲。

符合预期,此用例通过。

用例4:在歌曲名输入框输入歌曲名,点击查询按钮。

预期:如果输入歌曲不存在,则有相应提示。

不符合预期,此用例暂未通过,建议前端人员,在未查询到音乐的时候,给出相应提示。

用例5:在歌曲名输入框输入关键字,点击查询按钮。(模糊查询)。

预期:如果歌曲存在,查询到相应歌曲。

符合预期,用例通过。

用例6:点击播放歌曲按钮

预期:正常播放,显示出播放图标和进度调。

符合预期,用例通过。

用例7:点击喜欢按钮。

预期:弹出收藏成功提示框。

符合预期,用例通过。

用例8:针对同一首歌,点击第二次喜欢按钮

预期:弹出取消搜藏。

不符合预期,此用例未通过。

用例9:选择一首歌曲,点击删除按钮。

预期:弹出删除成功,重新加载当前页面提示框。

符合预期,用例通过。

用例10:选择多首音乐,点击删除选中按钮。

预期:弹出删除成功提示框

 符合预期,用例通过。

5.3上传页:

用例1:点击选择文件,输入歌手名,点击上传按钮。

预期:立马跳转到列表页,列表页多了一首音乐。

符合预期,用例通过。

用例2:选择了要上传的歌曲,但未输入歌手名。

预期:上传失败。

不符合预期,用例未通过,建议:前端人员将歌手名输入框改为必须输入项。

用例3:没有上传歌曲,也没有输入歌手名,直接点击上传按钮。

预期:上传失败。

符合预期,用例通过,建议:后端人员不要暴力使用异常,后端人员应该捕获异常,前端人员需要给出相应提示。用户看不懂这种专业的报错页面,导致用户体验不佳。

5.4喜欢列表页

用例1:在登录状态下,在列表页点击喜欢列表按钮。

预期:正常跳转到喜欢列表页,并进行正常显示。

符合预期,用例通过。

用例2:在列表页当中,在歌曲名输入框内输入歌曲名,点击查询按钮。

预期:如果有喜欢的歌曲,则查询到,并正常显示。

符合预期,用例通过。

用例3:在列表页当中,在歌曲名输入框内输入歌曲名的关键字,点击查询按钮。(模糊查询)

预期:如果有喜欢的歌曲,则查询到,并正常显示。

符合预期,用例通过。

用例4:点击播放图标按钮。

预期:能够正常播放音乐,显示播放按钮,进度调,音量调整按钮。

符合预期,用例通过。

用例5:点击下载按钮。

预期:音乐正常下载。

符合预期,用例通过。

用例6:点击移除按钮

预期:弹出删除成功,重新加载当前页面提示框,点击确定,跳转到列表页。

 

符合预期,用例通过。

6.测试报告 

6.1 测试安排

模块前端后端提测时间测试工时排期进度
登录页陈涛陈涛5.15陈涛0.5d5.15测试完成
列表页陈涛陈涛5.15陈涛0.5d5.15测试完成
上传页陈涛陈涛5.16陈涛0.5d5.16测试完成
喜欢列表页陈涛陈涛5.16陈涛0.5d5.16测试完成

6.2功能测试

  • 测试用例,上文已给出测试用例。
  • 功能测试结果:测试用例83%通过。


http://www.hkcw.cn/article/PBQoCnEyqI.shtml

相关文章

球展世界,筑梦中原,2025郑州台球展会,年中招商即将开启

-壹肆柒2025中国(郑州)国际台球产业博览会暨全国台球产业链发展大会,将于2025年08月15-17日,在郑州中原国际会展中心盛大举办。本届博览会主题:同聚中原共赢未来,四个展馆,42000㎡的展览面积&am…

58、辣椒种植学习

辣椒(学名:Capsicum annuum)属于茄科辣椒属,是一种重要的蔬菜兼调味作物,具有较高的经济价值和营养价值。其果实富含维生素C、辣椒素等成分,既可鲜食,也可加工成干辣椒、辣椒粉、辣椒酱等产品&a…

SCSAI平台面向对象建模技术的设计与实现

一、核心设计思想 SCSAI平台的核心目标是通过元建模(Meta-Modeling)技术实现面向对象建模的零编码化。其核心思想为: 自反性设计:定义ObjectClassInfo (OCI)为元类(Meta-Class),所有对象类均为…

三个细节 带你看懂中方在这届香会上的行动

这两天,谭主在第22届香格里拉对话会现场,参加了多场全体会议和平行会议。谭主在现场留意到三个细节,带你看懂中方在这届香会上的行动。细节一:中方提问美菲防长获东盟共鸣在昨天上午的第一场全体会议上,来自国防大学的张弛教授提问美国国防部长将如何处理美国联盟与东盟国…

UDP/TCP协议全解

目录 一. UDP协议 1.UDP协议概念 2.UDP数据报格式 3.UDP协议差错控制 二. TCP协议 1.TCP协议概念 2.三次握手与四次挥手 3.TCP报文段格式(重点) 4.流量控制 5.拥塞控制 一. UDP协议 1.UDP协议概念 当应用层的进程1要向进程2传输报文&#xff…

话题通信之python实现

在机器人操作系统(ROS)中,话题通信是一种常见的通信方式,它允许不同的节点之间通过主题进行数据交换。本文将介绍如何使用Python实现ROS话题通信,包括发布者和订阅者的编写。这种方法与使用C实现类似,但Pyt…

中国高分辨率高质量地面NO2数据集(2008-2023)

时间分辨率:日空间分辨率:1km - 10km共享方式:开放获取数据大小:15.36 GB数据时间范围:2008-01-01 — 2023-12-31元数据更新时间:2024-08-19 数据集摘要 ChinaHighNO2数据集是中国高分辨率高质量近地表空气…

射频通信概述

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目…

设置堆空间的最大值(-Xmx)应该要考虑哪些因素?

需要根据系统的配置来确定,要给操作系统和JVM其他内存区域(栈、方法区)留下一定的剩余空间。推荐配置系统或容器里可用内存的70%~80%最好。 假设物理内存是8G,设置多大堆内存比较合适? 系统有8G物理内存,系统自己可能会…

wordpress免费主题网站

这是一款WordPress主题,由jianzhanpress开发,可以免费下载。专为中小微企业设计,提供专业的网站建设、网站运营维护、网站托管和网站优化等服务。主题设计简约、现代,适合多种行业需求。 主要特点: 多样化展示&#…

SGLang 无法正常部署

1. 考虑 torch 版本 与 SGLang 不兼容: -> Python环境中的包被更新(如torch, deepspeed, transformers等)导致不兼容 - 参考:Exception: Capture CUDA graph failed: CUDA error: out of memory-CSDN博客 # 虽然锁定了 sg…

【拓扑排序】P6560 [SBCOI2020] 时光的流逝|普及+

本文涉及知识点 C图论 拓扑排序 P6560 [SBCOI2020] 时光的流逝 题目背景 时间一分一秒的过着,伴随着雪一同消融在了这个冬天, 或许,要是时光能停留在这一刻,该有多好啊。 … “这是…我在这个小镇的最后一个冬天了吧。” “嗯…

第13讲、Odoo 18 配置文件(odoo.conf)详细解读

1. 概述 Odoo 配置文件(odoo.conf)是管理 Odoo 服务器行为的核心工具,涵盖了网络、安全、数据库、性能等多方面的关键参数。本文档系统梳理 Odoo 18 配置文件的主要参数,结合实际应用场景,提供权威的配置建议与最佳实…

“大巴黎”欧冠夺冠引发法国多地骚乱

法甲球队巴黎圣日耳曼5月31日晚赢得欧冠联赛冠军奖杯,法国多地球迷彻夜庆祝。据法国内政部消息,狂欢夜有559人因滋事被捕,并发生两起命案。据法国媒体援引法国内政部等信源,在巴黎,一名20岁男子骑摩托车与汽车相撞,导致重伤不治身亡。在法国西南部城市达克斯,一名17岁未…

马斯克最新发声:不想为美政府所做的一切承担责任

当地时间6月1日,美国企业家埃隆马斯克当日在接受美国哥伦比亚广播公司的采访时表示,他不想公开反对美国政府,但也不想为政府所做的一切承担责任。马斯克在采访中表示,他所领导的“政府效率部”成了一切的替罪羊,所有的裁员无论是真是假都被怪罪到了“政府效率部”的头上。…

c++ QicsTable使用实例

效果图&#xff1a; #include <QicsTable.h> #include <QicsDataModelDefault.h> #include <QVBoxLayout> Demo1::Demo1(QWidget *parent) : QWidget(parent) { ui.setupUi(this); const int numRows 10; const int numCols 5; // create th…

俄乌第二轮会谈前夕 飞出数只 “黑天鹅”

俄乌第二轮谈判将于6月2日举行。根据土耳其外交部在1日晚间发布消息,本次会谈将于当地时间2日13时在伊斯坦布尔的契拉昂宫举行。截至目前,俄乌双方均就这次谈判各自的立场和方向做出了一定说明。但就在本次俄乌会谈前夕,多起“黑天鹅”事件却接连发生。△伊斯坦布尔的契拉昂…

内存马mama

一、Tomcat三种内存马 首先了解下tomcat的三种内存马的原理和简单实用 filter型内存马 Tomcat filter注册流程 FilterDefs&#xff1a;存放FilterDef的数组 &#xff0c;FilterDef 中存储着我们过滤器名&#xff0c;过滤器实例&#xff0c;作用 url 等基本信息 FilterConf…

PySide6 GUI 学习笔记——常用类及控件使用方法(地址类QUrl)

文章目录 地址类QUrl主要功能URL 格式介绍常见 scheme&#xff08;协议&#xff09;类型QUrl 类常用方法常用方法示例典型应用场景 地址类QUrl QUrl 是 PySide6.QtCore 模块中的一个类&#xff0c;用于处理和操作 URL&#xff08;统一资源定位符&#xff09;。它可以解析、构建…

DAY40 训练和测试

昨天我们介绍了图像数据的格式以及模型定义的过程&#xff0c;发现和之前结构化数据的略有不同&#xff0c;主要差异体现在2处 模型定义的时候需要展平图像由于数据过大&#xff0c;需要将数据集进行分批次处理&#xff0c;这往往涉及到了dataset和dataloader来规范代码的组织…