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

基于SpringBoot的在线抽奖系统测试用例报告

一、项目背景

在线抽奖系统采用前后端分离的方法来实现,同时使用了数据库来存储相关的数据,redis来缓存验证码,RabbitMQ来缓存信息队列,同时将其部署到云服务器上。前端主要有登录页、后台管理页、活动列表页,抽奖页等页面,以上模拟了较复杂的在线抽奖系统。其结合后端实现了以下的主要功能:登录、注册、添加奖品、添加抽奖活动以及退出等功能。

该在线抽奖系统可以实现个人用户简单的获奖记录,时间,标题,内容等可以进行查看,也会通过短信和邮箱的形式进行通知。

二、测试环境

硬件配置

内存:16.00GB

软件配置

Windows11,Edge浏览器(功能测试)

1.框架升级:将从Servlet升级到SSM框架,框架变得更高级。

2.拦截统一:通过拦截器对http请求进行统一拦截并采用统一的响应数据格式。

3.流行框架:设计了现代流行的前端框架,如vueJavaScript框架,axiosAjax请求框。

三、测试功能

该在线抽奖系统主要实现了以下几个功能:登录,注册,活动中心页面设置,抽奖页面设置,获奖页面等功能。

登录功能:该系统有手机号密码登录和手机号验证码登录,验证码会自动生成并保存在redis中。登录成功后就会跳转到活动中心页面,但是在未登录状态下,直接进入其他页面均会跳转到登录页面。

注册功能:用户输入对应的规范的数据,即可进行注册。

活动中心:活动中心主要有活动管理、奖品管理、人员管理等三个模块。

                 活动管理可以添加抽奖活动(添加已有奖品,已有人员)并进行抽奖活动;

                  奖品管理可以添加新奖品(添加奖品名称,奖品名称,奖品价值、奖品描述)并查看已有奖品列表;

                  人员管理列表可以添加普通用户(添加名字,邮箱,手机号)并查看已有普通用户。

抽奖页面:在活动中心的活动管理下点击抽奖按钮,此时就可以看见抽奖系统在抽奖,点击停止后可以查看结果。

四、测试过程

4.1.测试用例

实际执行测试的部分操作/截图

1、正常登录测试:

2、管理员用户注册测试:

3、添加抽奖活动并成功创建:

4、添加新奖品并创建成功:

 

5、普通用户注册

 

6、查看获奖记录

4.2自动化测试

根据测试用例进行代码编写,可以按照每个页面一个测试类的方式来组织。首先,需要单独创建一个公共属性类,以方便进行代码复用。

接下来,在各个测试类中进行测试用例的编写。为了便于运行和修改,可以使用测试套件。此外,启动和现场截图是频繁进行复用的操作,因此可以单独创建一个类进行存储,并在需要时进行调用。这样不仅美观更便于之后的修改。

在编写测试用例时,需要合理运用显示,隐式、强制等待,以确保页面能够正确加载和显示。这样可以有效避免因页面未完全加载导致的测试失败情况。

总之,按照测试用例的规划,可以将测试用例按照页面进行分组,结合测试套件和公共属性类,以及单独存储启动和现场截图的类,来进行测试化用例的编写和组织。

1、添加相关依赖pom.xml

<dependencies><!--添加自动管理浏览器驱动--><dependency><groupId>io.github.bonigarcia</groupId><artifactId>webdrivermanager</artifactId><version>5.8.0</version><scope>test</scope></dependency><!--添加selenium依赖--><dependency><groupId>org.seleniumhq.selenium</groupId><artifactId>selenium-java</artifactId><version>4.0.0</version></dependency><!--添加保存屏幕截图需要用到的包--><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.6</version></dependency><!--添加junit5依赖--><dependency><groupId>org.junit.jupiter</groupId><artifactId>junit-jupiter</artifactId><version>5.11.4</version><scope>test</scope></dependency><dependency><groupId>org.junit.platform</groupId><artifactId>junit-platform-suite</artifactId><version>1.10.2</version><scope>test</scope></dependency></dependencies>

 1、登录页面测试

创建驱动,并打开页面

测试页面是否正常打开

测试用户注册:多参数测试

测试用户登录:多参数测试

2、活动中心测试:

测试活动中心页面是否可以正常打开

测试普通用户是否可以正常注册:多参数测试

测试新奖品是否可以正常添加:多参数测试

测试抽奖活动是否可以正常添加:多参数测试

3.抽奖页测试

测试抽奖页面是否可以正常打开

测试抽奖页面是否可以正常抽奖

测试抽奖结果是否可以正常分享

部分代码测试如下图所示:

 

 

 

 

 

 

 

http://www.xdnf.cn/news/58051.html

相关文章:

  • 【KWDB创作者计划】_针对KWDB时序数据库(多副本集群环境)进行压力测试
  • Redis 键管理
  • MyBatis框架—xml映射
  • 34、Spark实现读取XLS文件
  • iOS中使用AWS上传zip文件到Minio上的oss平台上
  • nvidia physx
  • C# 封装教程
  • MCP实践第一步--磕磕碰碰搭环境
  • TensorFlow中使用Keras
  • Spring如何通过XML注册Bean
  • C++23 让 Lambda 表达式中的 () 更可选:P1102R2 提案深度解析
  • Apache RocketMQ 荣获 2024 开源创新榜单“年度开源项目
  • 【网络安全】OWASP 十大漏洞
  • 大数据组件学习之--Kafka 安装搭建
  • 机器人进阶---视觉算法(五)仿射变换和投影变换有什么区别
  • 国产AI新突破!全球首款无限时长电影生成模型SkyReels-V2开源:AI视频进入长镜头时代!
  • LangChain + 文档处理:构建智能文档问答系统 RAG 的实战指南
  • 微服务划分的思考
  • 量子计算在金融领域的应用与展望
  • Unity接入安卓SDK(3)厘清Gradle的版本
  • AI助理iOS开发:Copilot for Xcode 下载与安装全指南
  • Java 自动装箱与拆箱:基本数据类型与包装类的转换
  • Ansys electronics安装多版本simulink打开s-function冲突解决方法
  • 用Mac M4构建多架构Docker镜像指南
  • CSS 中实现 div 居中有以下几种常用方法
  • 解决Chrome浏览器访问https提示“您的连接不是私密连接”的问题
  • Android 15强制edge-to-edge全面屏体验
  • (7)NodeJS的使用与NPM包管理器
  • 1.2软考系统架构设计师:系统架构的定义与作用 - 练习题附答案及超详细解析
  • 23种设计模式-结构型模式之外观模式(Java版本)