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

OnlineMusic项目测试报告

OnlineMusic项目测试报告

    • 一、项目背景
      • 1.1 测试目标及测试任务的概括
      • 1.2 被测的系统,代码以及文档等信息
    • 二、测试安排
      • 2.1 测试用例设计
      • 2.2 测试方案设计
    • 三、测试分类
      • 3.1 测试方案
        • 3.1.1 功能测试
        • 3.1.2 自动化测试
        • 3.1.3 性能测试
      • 3.2测试结果
        • 性能测试报告

一、项目背景

1.1 测试目标及测试任务的概括

本次测试的目标是确保在线音乐播放器系统在功能完整性、稳定性、性能,确保其能够顺利部署并满足预期的业务需求。具体的测试任务包括以下几个方面:

  • 功能测试:验证音乐播放器的各项功能是否符合需求,包括用户的登录,上传歌曲,删除歌曲,收藏歌曲,搜索音乐、播放、暂停等功能。
  • 用户界面测试:评估播放器的UI是否友好,操作流程是否简便,设计是否符合用户习
  • 稳定性测试:对系统进行长时间的持续使用,检测播放器是否存在崩溃、卡顿等问题。
  • 接口测试:确保播放器与后端服务、数据库、第三方API接口的交互正确性。
  • 安全性测试:检测系统的安全性,防止可能的漏洞攻击,如数据泄露、权限问题等。

1.2 被测的系统,代码以及文档等信息

  • 系统名称:OnlineMusic
  • 项目源码:https://gitee.com/miwenwen/online-music
  • 系统功能:用户的登录,上传歌曲,删除歌曲,收藏歌曲,搜索音乐、播放、暂停等功能。
  • 技术栈:springboot + JDK8
    数据库:Mybatis + MySQL
    第三方插件:sewise-player:https://gitee.com/jackzhang1204/sewise-player

二、测试安排

2.1 测试用例设计

在这里插入图片描述

2.2 测试方案设计

  • 手动测试:主要对用户操作流程、界面显示、功能是否按预期运行进行手动测试。
  • 自动化测试:使用测试工具(如Selenium、Junit)对核心功能进行自动化测试,提高测试效率。
  • 性能测试:使用测试工具(jmeter)进行简单的性能测试

三、测试分类

3.1 测试方案

3.1.1 功能测试

对上述编写的测试用例进行测试
功能测试结果:测试用例100%通过

3.1.2 自动化测试

通过selenium和junit自动化测试工具对代码的核心功能进行自动化测试
自动化测试覆盖模块:登录,上传音乐,删除音乐,收藏音乐,重复收藏音乐,查询音乐等模块
自动化测试代码示例
https://gitee.com/miwenwen/online-music/blob/master/Test01/src/main/java/org/example/MusicPlayAutoTest/Tests.java
自动化测试结果:测试用例100%通过

3.1.3 性能测试

使用jmeter进行简单的性能测试:包括登录,列表页面,上传音乐,收藏音乐等接口进行测试

  • 添加线程组
    压测场景中,通常为是⼀点的逐步增加线程数,因此这里添加SteppingThreadGroup,可以逐步增加线程的负载,逐步启动线程。这里我们添加20个线程。在这里插入图片描述

  • 设置HTTP请求默认值
    项目中涉及到的接口协议、IP、端⼝号全都⼀样,可以单独抽取出来存放在默认值中,其他接⼝就可 以省略不写协议、IP、端⼝号
    在这里插入图片描述

  • 添加login接口
    在这里插入图片描述

  • 添加list接口,对列表页进行简单测试
    因为我们对列表页等页面添加了拦截器的功能,所以这里要设置cookie
    在这里插入图片描述

  • 添加update上传音乐
    在这里插入图片描述

  • 添加likeMusic收藏音乐接口
    在这里插入图片描述

3.2测试结果

  • 聚合报告
    从聚合报告可以看到性能测试过程中整体的数据变化
    在这里插入图片描述

  • ResponseTimesOverTime
    在这里插入图片描述

likeMusic接口响应时间相对较低且稳定,大部分时间保持在1000毫秒以内。
list接口响应时间也较为稳定,但相比likeMusic稍微高一些,大部分时间在1500毫秒左右波动。
login接口响应时间与list相似,同样比较稳定,主要在1500毫秒上下浮动。
update接口响应时间变化较大,开始时较高,接近甚至超过8000毫秒,随后逐渐下降并在后面趋于稳定,大约在3000毫秒附近。

  • TransactionsperSecond(TPS)
    在这里插入图片描述

图中显示了三种类型的事务:likeMusic (success)(蓝色)、list (success)(绿色)和login (success)(红色)
每种事务的柱状图显示了每秒的事务数量。可以看到,list事务的数量相对较高,而login和likeMusic的事务数量相对较低。

  1. 性能趋势
    从图中可以看到,随着时间的推移,list事务的数量有波动,但总体趋势是上升的。这可能表明系统在处理list操作时,随着负载的增加,性能有所提升或者系统资源得到了更好的利用。
    login和likeMusic事务的数量相对稳定,没有明显的上升或下降趋势。
  2. 系统稳定性
    如果事务数量的波动较大,可能表明系统在高负载下不够稳定。从图中看,list事务虽然有波动,但整体趋势向上,这可能意味着系统在逐渐适应负载。
    login和likeMusic事务的稳定性较好,没有出现大的波动。
  3. 优化建议
    针对list事务的上升趋势,可以进一步分析其资源消耗,看是否有优化空间。
    对于login和likeMusic事务,如果业务需求增加,需要考虑系统是否能够支撑更大的负载。
性能测试报告

在这里插入图片描述
在这里插入图片描述


http://www.kler.cn/a/447717.html

相关文章:

  • 分布式系统架构5:限流设计模式
  • CUDA编程 | 6.2 并发内核执行
  • 【C#】try-catch-finally语句的执行顺序,以及在发生异常时的执行顺序
  • 通过阿里云 Milvus 与 PAI 搭建高效的检索增强对话系统
  • 【人工智能】用Python实现图卷积网络(GCN):从理论到节点分类实战
  • dolphinscheduler服务RPC框架源码解析(八)RPC提供者服务整合Spring框架实现
  • 【Leetcode 每日一题】1387. 将整数按权重排序
  • 2024年12月CCF-GESP编程能力等级认证C++编程八级真题解析
  • Jenkins持续集成部署——jenkins安装
  • 时间管理系统|Java|SSM|JSP|
  • 国际抖音TikTok矩阵运营的关键要素有哪些?
  • 【MySQL】深入了解索引背后的内部结构
  • 使用开源在线聊天工具Fiora轻松搭建个性化聊天平台在线交流
  • 海信中央空调 冬日取暖的舒适密码
  • RAG+AI Agent在医疗领域的应用有哪些?
  • 关于redis锁的简单实现
  • GTID下复制问题和解决
  • 分布式系统架构5:限流设计模式
  • Python趣味游戏---自己改成图片,跟着鼠标移动,一直克隆自己,0.3秒钟后消除克隆体
  • Java学习,数组中查找指定元素
  • 数据分析时的json to excel 转换的好用小工具
  • 计算机毕业设计原创定制(免费送源码):NodeJS+MVVM+MySQL 樱花在线视频网站
  • 「Mac畅玩鸿蒙与硬件46」UI互动应用篇23 - 自定义天气预报组件
  • ORB-SLAM2源码学习:Tracking.cc:Tracking::NeedNewKeyFrame是否需要插入关键帧
  • Android settings命令详解
  • 科研笔记:CCS CONCEPTS