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

幸运之轮系统测试报告

测试报告文档:幸运之轮系统

一、测试背景

本项目为基于 Spring Boot 开发的企业级抽奖系统,支持用户管理、奖品配置、抽奖活动管理与中奖结果通知等功能模块。系统使用 MySQL 存储核心数据,Redis 进行缓存优化,RabbitMQ 实现异步解耦。本文档从功能测试、接口测试、性能测试、安全性测试和自动化测试五个维度出发,对项目进行全面测试。


二、测试环境

  • 操作系统:Windows 10 / CentOS 7
  • 测试浏览器:Chrome 123、edge
  • JDK版本:JDK 17
  • 数据库:MySQL 6.0
  • 缓存:Redis 4.0
  • 消息队列:RabbitMQ 3.11
  • 项目框架:Spring Boot 3.x
  • 测试工具:Postman、JMeter、Selenium、XMind、Junit

三、测试范围

  • 用户注册与登录模块
  • 奖品管理模块
  • 用户管理模块
  • 抽奖活动配置与执行模块
  • 中奖结果与通知模块

四、测试用例设计(部分核心功能)

1. 登录测试
用例编号测试项输入预期结果
TC-001正确登录正确手机号+正确密码返回登录成功,JWT Token 生效
TC-002密码错误正确手机号+错误密码返回登录失败,提示“密码错误”
TC-003手机号为空空+任意密码返回“手机号不能为空”
TC-004密码为空正确手机号+空返回“密码不能为空”
TC-005未注册用户登录随机手机号+任意密码返回“用户不存在”
2. 新增奖品测试
用例编号测试项输入参数预期结果
TC-101正常添加奖品奖品名:耳机,数量:5,等级:3返回“添加成功”,数据库新增记录
TC-102数量为负值数量:-1返回“奖品数量不能为负”
TC-103奖品名为空空名+任意数量返回“奖品名称不能为空”
TC-104奖品等级非法奖品等级:10返回“奖品等级需为1~5之间”
3. 新增用户测试
用例编号测试项输入参数预期结果
TC-201正常新增用户手机号:13900000001,昵称:张三返回“新增成功”,数据写入成功
TC-202手机号格式错误手机号:123456返回“手机号格式非法”
TC-203昵称为空手机号正确,昵称为空返回“昵称不能为空”
4. 新增抽奖活动测试
用例编号测试项输入参数预期结果
TC-301正常添加活动活动名:年会抽奖,时间正常返回“活动创建成功”,状态为未开始
TC-302活动名为空返回“活动名称不能为空”
TC-303活动时间非法开始时间 > 结束时间返回“活动时间设置有误”
5. 抽奖执行测试
用例编号测试项输入参数预期结果
TC-401正常抽奖登录用户、活动进行中返回中奖信息/未中奖提示
TC-402非活动时间抽奖活动未开始或已结束返回“活动未开始/已结束”
TC-403已中奖重复抽奖用户已中奖再次抽奖返回“您已中奖,无法再次抽奖”

五、接口测试

使用 Postman 对以下接口进行验证:

  • /user/register 注册接口
  • /user/login 登录接口
  • /prize/add 添加奖品
  • /activity/create 新增活动
  • /lottery/draw 发起抽奖

接口测试内容包括:

  • 正确响应结构(code/msg/data)
  • 鉴权 token 是否校验成功
  • 请求参数边界与异常输入处理

六、性能测试

工具:JMeter

  • 抽奖接口 /lottery/draw
    • 并发用户数:100, 500, 1000
    • 响应时间控制在 300ms 以内
    • TPS 保持在 200+,99% 响应时间 < 500ms

七、安全性测试

  • 未登录访问 /admin/** 路由 → 返回未授权
  • 非管理员用户调用后台新增接口 → 拦截
  • 明文提交手机号/密码 → 校验数据库是否加密存储

八、自动化测试脚本(Selenium + Java 示例)

WebDriver driver = new ChromeDriver();
driver.get("http://localhost:8080/login");WebElement phoneInput = driver.findElement(By.id("phone"));
WebElement passwordInput = driver.findElement(By.id("password"));
WebElement loginButton = driver.findElement(By.id("login-button"));phoneInput.sendKeys("13900000001");
passwordInput.sendKeys("test123456");
loginButton.click();Thread.sleep(2000);
WebElement userNameDisplay = driver.findElement(By.id("nickname"));
Assert.assertEquals("张三", userNameDisplay.getText());
driver.quit();

九、缺陷记录(示例)

编号问题描述严重程度状态
001抽奖页面刷新后状态丢失已修复
002奖品数量为负仍可提交已修复
003非法手机号可注册已修复

十、测试结论

本次测试覆盖主要功能模块,接口响应结构规范,系统在中高并发下保持稳定,具备良好的安全机制与错误处理能力。建议上线前补充异常恢复测试和缓存穿透场景验证。

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

相关文章:

  • 影刀RPA-操作网站基础信息
  • java精简复习
  • 153. 寻找旋转排序数组中的最小值
  • BeeWorks:构建企业智能数字化协作中枢,实现办公与业务系统的无缝整合
  • ansible-playbook 剧本
  • Python编程7——面向对象编程2
  • 华为OD机试真题——模拟工作队列(2025A卷:200分)Java/python/JavaScript/C/C++/GO最佳实现
  • 智能体通信协议之A2A和ANP对比分析
  • 【测试报告】博客系统
  • 学习python day10
  • 5.2.2二叉树的存储结构
  • 电脑软件管家 免安装便携 四十多种功能系统优化”“磁盘清理”“隐私保护
  • Windows中“无法成功完成操作,因为文件包含病毒或潜在的垃圾软件
  • 辛格迪客户案例 | 合规升级之路:辛格迪助力倍特药业迈向卓越
  • 面对 UI 差异化的调试难题:本地多设备测试中的 WebDebugX 应用实录
  • 【蓝桥杯嵌入式】【复盘】第15届省赛真题
  • Python学习(3) ----- Python的函数定义及其使用
  • OpenLayers 加载网格信息
  • [CISCN 2021初赛]glass
  • 【第2章 绘制】2.15 剪辑区
  • 【摄影教程】
  • 使用jessibuca+wvp+zlm实现html无插件播放摄像头实时画面
  • promise详细总结
  • VTK|Z轴拉伸功能的实现
  • 【Redis】通用命令
  • 使用Milvus运行一个Milvus单机版实例
  • 什么是 SRM、ERP、SCM,如何科学选型采购系统
  • 【Python】 -- 趣味代码 - 皮卡丘
  • 打造卓越客户支持体验:知识共享驱动服务优化
  • 利用openwrt路由器和随身WIFI搭建CPE