一、 项目概述
本项目为基于 SpringBoot 框架开发的抽奖系统,系统主要用于实现管理员管理抽奖、选取用户参与活动并进行抽奖的业务流程。系统支持管理员注册登录、活动管理、奖品管理、抽奖人员管理、抽奖操作以及中奖记录查询等功能。
抽奖系统通过后台管理和用户操作,实现活动的创建、奖品配置以及用户抽奖流程控制。系统采用后端 Java 开发,提供 Web 访问接口,通过浏览器进行操作。
本次测试主要针对系统的核心业务功能进行验证,确保系统在不同使用场景下能够稳定运行,并保证抽奖逻辑的正确性。
二、 测试目的
1.验证抽奖系统核心功能是否符合设计要求
2.检查系统在异常输入情况下的处理能力
3.验证系统在不同操作情况下的稳定性
4.检测系统是否存在安全隐患
5.确保抽奖流程逻辑正确,中奖概率符合配置规则
三、 测试环境
操作系统:Ubuntu 22.04(虚拟机)
开发语言:Java 17
运行方式:JAR包部署运行
数据库:MySQL 8
缓存系统:Redis 6
消息队列:RabbitMQ
浏览器:Microsoft Edge 146.0.3856.62 (正式版本) (64 位)
测试工具:navicat、Xshell、VMware、fiddler、Postman、Jmeter
技术点测试:Redis缓存测试、RabbitMQ消息队列测试、mysql数据库数据一致性测试
系统访问地址:
http://192.168.5.128:8080/blogin.html
四、 功能模块分析
本系统通过模块化设计,将抽奖业务划分为用户认证、用户管理、活动管理、奖品管理、抽奖处理和中奖记录等多个模块,并结合 Redis 缓存与 RabbitMQ 消息队列实现高并发场景下的稳定抽奖服务。
五、 测试用例设计
5.1测试用例设计思维导图

5.2具体测试用例
5.2.1登录模块测试用例
5.2.1.1密码登录测试用例

5.2.1.2验证码登录测试用例

5.2.2注册模块测试用例

5.2.3人员模块测试用例

5.2.4奖品模块测试用例

5.2.5活动模块测试用例

5.2.6安全性测试用例

5.2.7性能测试用例

5.2.8兼容性测试用例

六、 测试执行过程
6.1测试准备
- 打开VMware,启动Ubuntu虚拟机
- 打开xshell,双击Ubuntu进入Linux
- 进入lottery_system,运行jar包

- 再打开一个虚拟机,方便后续进入MySQL查表或进入redis看缓存
- Edge进入http://192.168.5.128:8080/blogin.html
6.2开始测试
6.2.1登录模块
(1)测试结果


(2)结果截图

图 1 LOGIN_008结果图

图 2 LOGIN_009结果图

图 3 LOGIN_012结果图

图 4 进入redis

图 5 CODE_007结果图
6.2.2注册模块
(1)测试结果

(2)结果截图

图 6 REG_007结果图
6.2.3人员模块
(1)测试结果

(2)结果截图

图 7 USER_010结果图
6.2.4奖品模块
(1)测试结果

(2)结果截图

图 8 PRIZE_003错误原因

图 9 PRIZE_003解决办法

图 10 PRIZE_003成功通过
6.2.5活动模块
(1)测试结果

(2)结果截图

图 11 DRAW_012 结果截图
6.2.6安全性
测试结果

6.2.7性能
(1)测试结果

(2)结果截图

图 12 PERF_004结果图
6.2.8兼容性
测试结果

6.3 bug记录
6.3.1 界面提示问题



修改建议:
修改对应提示词,让提示词更加准确
6.3.2 性能问题

修改建议:
页面更新延迟主要由于前端采用轮询机制获取最新数据, 页面需在下一次请求接口时才会刷新状态,因此存在短暂延迟,可以优化轮询机制或改用WebSocket
6.3.3 功能问题

修改建议:
在Linux中创建可以存放上传文件(图片)的目录,并赋予该目录最高权限,确保可以读写

6.4技术点记录
6.4.1 redis缓存
验证成功
6.4.2 mysql数据库记录
验证成功
6.4.3 rabbitMQ消息队列
(1)现象
1.消息队列运行正常,消息能够被正常消费

2.中奖结果及活动状态更新存在延迟

(2)结果
系统整体功能运行正常,RabbitMQ 消息队列工作正常,页面显示延迟属于前端刷新机制导致的正常现象,不影响系统核心业务功能
七、 测试 总结
抽奖系统业务流程正确,核心功能较为完善,能够满足基本的抽奖活动管理需求。系统在功能完整性、稳定性、安全性等方面表现良好,达到预期测试目标。建议修复已发现的界面提示问题和图片上传问题后,可投入生产环境使用。