卷王问卷考试系统测试报告

张开发
2026/6/29 16:17:42 15 分钟阅读
卷王问卷考试系统测试报告
项目介绍项目概述卷王问卷考试系统SurveyKing是一个基于Spring Boot React的开源在线问卷与考试平台支持问卷创建、考试创建、导入试题、模板使用等功能。本次测试基于官方 Gitee 发布的 v1.9.0 版本进行私有化部署。项目已实现的功能普通用户登录与注册首页展示用户创建的考试数量和问卷调查数量我的项目页面展示项目列表可切换项目列表展示布局可按照项目名称进行搜索问卷创建、奖品创建以及文件夹创建excel导入问卷和奖品对项目进行重命名和删除分页展示项目列表我的练习页面展示练习列表可按照练习状态进行查询删除练习题库中心我的题库页面展示题库列表可按题库名称和题库类型进行搜索对题库列表的增删改支持文本导入问题管理页面展示问题列表可对类型、题型、名称、标签进行查询可批量删除问题我的笔记页面可切换展示我的错题列表和我的收藏列表我的错题支持按照问题标题、笔记和创建时间进行查询我的收藏支持按照问题标题和创建时间进行查询模板广场页面展示公共库模板或者私有库模板列表可按模板名字进行搜索添加模板和删除模板系统管理岗位设置页面展示岗位列表可按岗位名称进行查询对岗位进行增删改字典管理页面展示字典列表可按字典名称进行查询对字典进行增删改个人设置页面更新头像、姓名、手机号、邮箱以及个人简介安全设置页面修改账户密码以上为主要可正常使用的功能由于某些原因部分功能暂不可使用项目测试目标主页面测试覆盖率不低于90%测试项目相关信息项目线上地址http://49.235.61.184:8080/user/login项目官方源码地址https://gitee.com/surveyking/surveyking主要测试模块登录、注册、我的项目、我的练习、题库中心、模板广场、系统管理测试计划功能测试项目测试的部分操作和截图1. 正常登录2. 正常注册3. 新建问卷4. 搜索项目5. 删除练习6. 新增题库7. 笔记搜索8. 添加模板9. 修改个人基本信息自动化测试1. 编写Web测试用例2. 代码编写① 在pom.xml中添加自动化测试所需的依赖dependenciesdependencygroupIdorg.seleniumhq.selenium/groupIdartifactIdselenium-java/artifactIdversion4.39.0/version/dependencydependencygroupIdio.github.bonigarcia/groupIdartifactIdwebdrivermanager/artifactIdversion6.3.3/version/dependencydependencygroupIdcommons-io/groupIdartifactIdcommons-io/artifactIdversion2.21.0/version/dependencydependencygroupIdorg.slf4j/groupIdartifactIdslf4j-simple/artifactIdversion2.0.17/version/dependency/dependencies② 在src/test/java目录下建立包以及相关的测试类和工具类3. 各个类功能介绍1测试工具类TestUtils为页面测试类提供driver、wait等对象封装一些页面会用到的操作方法如截图、执行js等2常量类Constants封装测试类中测试方法会用到的一些常亮如url、弹窗提示文本等3登录页测试类LoginPageTest测试登录页面是否可以正常打开测试成功登录和异常登录测试点击注册账户按钮是否可以跳转到注册页4注册页测试类RegisterPageTest测试注册页面是否可以正常打开测试成功注册和异常注册测试点击返回登录按钮是否可以返回到登录页面5首页测试类HomePageTest测试首页内容是否正常显示测试tab栏是否可以正常切换测试快速开始的创建问卷按钮和创建考试按钮是否可点击跳转到对应页面6我的项目页面测试类MyProjectPageTest测试我的项目页面是否可以正常显示测试搜索功能是否正常测试操作列的功能按钮是否可以进行相应的操作测试分页功能是否正常7我的练习页面测试类MyExercisePageTest测试我的练习页面是否可以正常显示测试搜索功能是否正常测试点击列表操作列的删除按钮是否可以正常删除测试分页功能是否正常8我的题库页面测试类MyRepoPageTest测试我的题库页面是否可以正常显示测试搜索功能是否正常测试新建题库功能是否正常测试文本导入功能是否正常测试编辑题库和删除题库功能是否正常测试分页功能是否正常9问题管理页面测试类QuestionManagePageTest测试问题管理页面是否可以正常显示测试搜索功能是否正常测试问题编辑功能是否正常测试分页功能是否正常测试批量删除功能是否正常10我的笔记页面测试类MyNotePageTest测试我的笔记页面是否可以正常显示测试tab栏切换功能是否正常测试搜索功能是否正常测试点击笔记列表操作列的删除按钮是否可以正常删除测试分页功能是否正常11模板广场页面测试类TemplateSquarePageTest测试模板广场页面是否可以正常显示测试搜索功能是否正常测试添加模板功能是否正常测试模板的预览、应用以及删除功能是否正常12用户管理页面测试类UserManagePageTest测试用户管理页面是否可以正常显示测试搜索功能是否正常测试用户的新增、编辑以及删除功能是否正常测试导入excel进行批量创建用户的功能是否正常测试重置密码功能是否正常测试分页功能是否正常13角色管理页面测试类RoleManagePageTest测试角色管理页面是否可以正常显示测试搜索功能是否正常测试角色的新建、编辑以及删除功能是否正常测试分页功能是否正常14岗位设置页面测试类PositionSettingPageTest测试岗位列表页面是否可以正常显示测试搜索功能是否正常测试岗位的新建、编辑以及删除功能是否正常测试分页功能是否正常15字典管理页面DictManagePageTest测试字典管理页面是否可以正常显示测试搜索功能是否正常测试字典的新建、编辑以及删除功能是否正常测试分页功能是否正常16个人设置页面测试类PersonalSettingPageTest测试个人设置页面是否可以正常显示测试是否可以对个人的基本信息进行修改测试是否可以修改密码测试是否可以修改系统的相关基本信息以及是否可以控制功能的开放测试是否可以对系统的设置进行重置4. 代码参考https://gitee.com/vvns/questionnaire-auto-test性能测试JMeter单测登录接口1. 线程组配置2. 配置解释添加了HTTP请求默认值和HTTP信息头管理器两个配置原件一个用来设置请求的协议、服务器ip、端口号、内容编码等基本信息另一个是设置请求头要带上哪些字段如Content-Type、Authorization等本次配置了10个线程立即开启并持续执行2秒最后查看结果数和聚合报告3. 测试结果4. 总结测试场景与稳定性验证本次针对卷王问卷考试系统登录接口开展 10 线程并发性能测试累计执行 90 次请求异常率为 0.00%全量请求无失败、无超时接口在并发压力下运行稳定可靠性完全达标响应时间表现接口平均响应时间 233ms中位数 223ms90% 请求响应时间≤301ms95% 请求≤308ms99% 请求≤384ms响应时间波动范围为 129ms~385ms整体延迟处于较低水平完全符合用户端流畅操作的体验要求吞吐量与负载能力接口吞吐量达 41.6 次 / 秒数据接收速率 34.16KB/sec、发送速率 25.22KB/sec在 10 线程并发场景下接口处理能力充足无明显性能瓶颈可支撑系统日常登录场景的并发访问需求对系统核心功能进行梯度压测1. 梯度压测线程组配置2. 测试结果(1) 聚合报告(2) 响应时间曲线图(3) 每秒事务数曲线图3. 生成测试报告(1) 命令jmeter-n-t脚本文件-l日志文件-e-o目录# -n : 无图形化运行# -t : 被运行的脚本# -l : 将运行信息写入日志文件后缀为jtl的日志文件# -e : 生成测试报告# -o : 指定报告输出目录执行这个命令后jmeter会把指定的脚本文件先执行一遍再生成测试报告(2) 生成结果① 总览② 时间变化图③ 分析卷王问卷考试系统 JMeter 压测报告分析测试总结写自动化测试的代码时注意一下各个测试类以及相应测试方法的执行顺序页面截图可以先在自动化发送交互指令之前截图如果截某个元素变化之后的页面呈现可使用wait智能等待等时机合适再进行截图本次自动化测试虽未使用测试框架但测试代码整体都能跑通。后续如果接入框架代码的可维护性和编写灵活性会有进一步提升空间做性能测试的时候可以单测主要核心功能接口涉及到一个模块的增删改查可以思考一下怎么调整顺序能让一个接口的响应配合另一个接口的请求构造更好的方便我们测试计划的执行本次系统大部分接口都是传json数据对于一个json请求如果发现某个接口请求失败先看看请求体的构造的json形式是否正确比如少了逗号或者双引号然后再看响应信息进一步确定问题所在依次排查

更多文章