基于Springboot实现的自动化测试平台

简介: 基于Springboot实现的自动化测试平台

项目编号:BS-XX-063

运行环境:

开发工具:IDEA / ECLIPSE

管理工具:MAVEN

数据库:MYSQL5.7

应用服务器:TOMCAT8.5.31

开发方式:前后端分离

开发技术:

后台:Springboot+springmvc+mybatis-plus

前端:Vue

本系统选题新颖,技术先进,采用前后端分离的方式开发实现,后台开发采用Springboot开发,前端开发采用VUE开发。功能全面,页面简洁大方,是一款优秀的毕业设计作品。


本文主要基于研究的目的,实现了一个自定义的接口管理平台,并可以在这个接口管理平台上实现接口的自动测试功能。有了这套接口管理平台,软件项目开发时,就可以将项目开发的接口通过这个平台来进行管理,就不用再像以前用WORD文档来管理了。一是原来的这种管理方式十分不便,二是当接口修改变更时不能及时发布同步更新。而新的接口管理平台上线,则有效的解决了这一问题,前端和后端开发人员可以通过平台实时查看接口说明和标准,并及时收到接口的更新变化,并可以在平台上模拟数据进行接口测试。这无疑对我们软件开发的接口管理和测试带来了极大的便利。


本项目采用前后端分离的方式开发实现,系统后台使用Springboot作为系统后台开发的主要使用技术,结合Springmvc和Mybati-plus来进行自动化接口测试平台的后台开发。系统前端采用Vue脚手架开发实现,基于NodeJs环境运行,使用Axios远程调用后端服务接口来实现。通过对相关技术的研究学习,最终完成了一个完整的接口管理平台,并可以实现在线接口测试功能。


系统使用Springboot创建开发项目,使用Springmvc完成请求处理,使用Mybatis-plus完成持久层开发,使用Maven来管理后台相关依赖库;使用Vue-cli搭建开发前端工程,使用Nodejs作为前端运行环境,采用NPM来管理前端的相关依赖库;使用RestTemplate来完成对接口的http请求调用。

image.png

系统整体的架构图

image.png

系统功能模块图


下面我们详细介绍一下这些模块的具体实现功能:


用户管理模块:此模块主要实现对系统用户的管理,主要完成用系统操作用户的新增和查询操作。

项目管理模块:此模块主要实现对项目的信息管理功能。管理员登陆系统后可以添加要进行测试的项目信息,可以根据需要进行查询、修改或删除项目信息。

模块管理功能:此模块主要实现对项目的功能模块管理功能。管理员登陆系统后可以添加要进行测试项目的功能模块信息,可以根据需要进行查询、修改或删除项目功能模块信息。

接口管理功能:此模块主要实现对项目中定义的接口进行管理。管理员登陆系统后可以添加要进行测试项目的接口信息,可以根据需要进行查询、修改或删除项目接口信息。

测试管理功能:此模块主要实现对对定义的测试用例和测试合集进行管理。管理员登陆系统后可以添加为测试设计的测试用例信息,可以根据设计好的测试用例实现在线执行测试。也可以添加测试合集,同时测试多个接口的功能,并将测试的结果记录在数据库表中。

3.2  主要功能模块的设计与实现


3.2.1  用户管理

用户管理模块主要实现了系统用户的管理功能,管理员进入系统后台可以在左边的菜单中选择用户管理模块,进入后可以对用户进行添加操作。也可以根据需要输入组件条件进行搜索查询列表,列表中的用户以分页的形式显示,主要展示用户的姓名、昵称、性别、电话、邮箱、用户类型、创建时间信息。

系统的运行实现如下图3-3所示:

image.png

图3-3 用户管理模块


用户管理模块的核心代码如下:


列表查询直接调用UserInfoService的page方法,而UserInfoService又继承使用了Mybatis-plus所封装的业务实现类ServiceImpl,所在不必再定义page方法,十分方便快捷。

3.2.2  项目管理


项目管理模块主要实现了对于参与测试的软件项目信息的管理功能,管理员进入系统后台可以在左边的菜单中选择项目管理模块,进入后可以对待测试的项目进行添加、修改、删除操作。也可以根据需要输入组件条件进行搜索查询列表,列表中的项目以分页的形式显示,主要展示项目名称、创建时间、修改时间、项目说明信息。


系统的运行实现如下图3-4所示:

image.png

图3-4 项目管理模块


项目管理模块的核心代码如下:


列表查询直接调用ProjectInfoService的page方法,而ProjectInfoService又继承使用了Mybatis-plus所封装的业务实现类ServiceImpl,所在不必再定义page方法,十分方便快捷。


项目管理模块的核心代码如下:


列表查询直接调用ProjectInfoService的page方法,而ProjectInfoService又继承使用了Mybatis-plus所封装的业务实现类ServiceImpl,所在不必再定义page方法,十分方便快捷。

3.2.3  模块管理


模块管理模块主要实现了对于参与测试的软件项目中相关的功能模块的管理功能,管理员进入系统后台可以在左边的菜单中选择模块管理模块,进入后可以对待测试的功能模块进行添加、修改、删除操作。也可以根据需要输入组件条件进行搜索查询列表,列表中的项目以分页的形式显示,主要展示模块名称、模块运行的IP地址、模块所属项目名称、修改时间、创建时间信息。


系统的运行实现如下图3-5所示:

image.png

图3-5 模块管理模块


模块管理的核心代码如下:此处展示模块的添加操作,查询功能同上面两个模块相拟。


通过@RequestBody注解得到前端请求的请求体数据直接封装到SaveModelPO对象中,然后调ModuleInfoService的saveOrUpdate方法实施保存操作。此方法仍然是Mybatis-plus框架所提示的业务封装实现类ServiceImpl中所定义,我们直接继承使用即可。如果数据库中有相关的对象信息,则执行更新操作,如果没有,则执行插入操作。

3.2.4  接口管理模块


接口管理模块主要实现了对于参与测试的软件项目中相关的接口的管理功能,管理员进入系统后台可以在左边的菜单中选择接口管理模块,进入后可以对待测试的接口进行添加、修改操作。也可以根据需要输入组合条件进行搜索查询接口信息列表,列表中的接口以分页的形式显示,主要展示接口名称、参数类型、请求方式、请求路径、所属模块、所属项目、接口说明、创建时间、修改时间。


系统的运行实现如下图3-6所示:

image.png

图3-6 接口管理模块


接口管理的核心代码如下:此处展示模块的添加操作,查询功能同上面两个模块相拟。


通过@RequestBody注解得到前端请求的请求体数据直接封装到SaveModelPO对象中,然后调InterfaceInfoService的saveOrUpdate方法实施保存操作。此方法仍然是Mybatis-plus框架所提示的业务封装实现类ServiceImpl中所定义,我们直接继承使用即可。如果数据库中有相关的对象信息,则执行更新操作,如果没有,则执行插入操作。

3.2.5  测试管理


测试管理模块主要实现了对于设计的测试用例的管理功能,管理员进入系统后台可以在左边的菜单中选择测试管理模块,此模块包含两个子模块,分别是用例管理和测试集合管理。用例管理主要实现对单个用例的管理功能,测试集合可以定义一个用例集合,一起测试集合的所有测试用例。在用例管理模块进入后可以进行添加测试用例、修改测试用例操作。也可以根据需要输入组合条件进行搜索查询测试用例信息列表,列表中的测试用例以分页的形式显示,主要展示测试接口名称、参数类型、请求方式、请求路径、IP地址、所属模块、所属项目、接口说明、创建时间、修改时间等。点击执行可以在线执行测试接口运行结果,并可以在详情中查询用例定义及其测试的结果详情信息。在详情页面可以自己根据接口定义的参数类型添加测试参数数据并展示测试结果。


系统的运行实现如下图3-7、3-8所示:

image.png

图3-7 测试用例列表

image.png

图3-8 测试用例详情


用例管理的核心代码如下:主要展示用例执行调用接口的方法


测试合集则主要是将多个测试用例集成到一起进行测试管理,以便测试一些接口的依赖相关性。在测试合集管理模块进入后可以进行添加测试用例合集操作。也可以根据需要输入组合条件进行搜索查询测试用例合集信息列表,列表中的测试用例合集以分页的形式显示,主要展示测试合集名称、合集中的测试用例ID列表、创建时间等。点击执行可以在线执行合集内所有接口运行结果,并可以在详情中查看合集内用例的列表信息,并可以在此处添加合集内的测试用例并查看合集内单个测试用例的执行结果。


测试合集的运行结果如下图3-9、3-10所示:

image.png

图3-9 测试合集列表

image.png

3.2.6  用户登陆


用户登陆是系统的入口,完成用户名和密码的校验工作后方可进入后台执行接口测试工作。用户账户由管理员在后台分配,分配的账户信息存入数据库表中。

用户登陆的运行界面如下图3-11所示:

image.png

图3-11用户登陆界面

以上是关于本自动化测试平台的部分介绍及功能展示,本系统选题新颖,技术先进,采用前后端分离的方式开发实现,后台开发采用Springboot开发,前端开发采用VUE开发。功能全面,页面简洁大方,

相关文章
|
4月前
|
关系型数据库 MySQL 测试技术
【分享】AgileTC测试用例管理平台使用分享
AgileTC 是一个脑图样式测试用例管理平台,支持用例设计、执行与团队协作,帮助测试人员高效管理测试流程。
312 116
【分享】AgileTC测试用例管理平台使用分享
|
4月前
|
人工智能 数据可视化 测试技术
AI测试平台自动遍历:低代码也能玩转全链路测试
AI测试平台的自动遍历功能,通过低代码配置实现Web和App的自动化测试。用户只需提供入口链接或安装包及简单配置,即可自动完成页面结构识别、操作验证,并生成可视化报告,大幅提升测试效率,特别适用于高频迭代项目。
|
4月前
|
人工智能 测试技术 调度
写用例写到怀疑人生?AI 智能测试平台帮你一键生成!
霍格沃兹测试开发学社推出AI智能测试用例生成功能,结合需求文档一键生成高质量测试用例,大幅提升效率,减少重复劳动。支持自定义提示词、多文档分析与批量管理,助力测试人员高效完成测试设计,释放更多时间投入核心分析工作。平台已开放内测,欢迎体验!
|
4月前
|
人工智能 测试技术 项目管理
测试不再碎片化:AI智能体平台「项目资料套件」功能上线!
在实际项目中,需求文档分散、整理费时、测试遗漏等问题常困扰测试工作。霍格沃兹推出AI智能体测试平台全新功能——项目资料套件,可将多个关联文档打包管理,并一键生成测试用例,提升测试完整性与效率。支持套件创建、文档关联、编辑删除及用例生成,适用于复杂项目、版本迭代等场景,助力实现智能化测试协作,让测试更高效、更专业。
|
5月前
|
存储 人工智能 算法
AI测试平台实战:深入解析自动化评分和多模型对比评测
在AI技术迅猛发展的今天,测试工程师面临着如何高效评估大模型性能的全新挑战。本文将深入探讨AI测试平台中自动化评分与多模型对比评测的关键技术与实践方法,为测试工程师提供可落地的解决方案。
|
7月前
|
存储 测试技术 虚拟化
VMmark 4.0.3 - 虚拟化平台基准测试
VMmark 4.0.3 - 虚拟化平台基准测试
216 0
VMmark 4.0.3 - 虚拟化平台基准测试
|
3月前
|
API 调度 虚拟化
VMware Cloud Foundation Automation 9.0.1.0 发布 - 私有云自动化平台
VMware Cloud Foundation Automation 9.0.1.0 发布 - 私有云自动化平台
197 3
VMware Cloud Foundation Automation 9.0.1.0 发布 - 私有云自动化平台
|
7月前
|
人工智能 Java 测试技术
Spring Boot 集成 JUnit 单元测试
本文介绍了在Spring Boot中使用JUnit 5进行单元测试的常用方法与技巧,包括添加依赖、编写测试类、使用@SpringBootTest参数、自动装配测试模块(如JSON、MVC、WebFlux、JDBC等),以及@MockBean和@SpyBean的应用。内容实用,适合Java开发者参考学习。
772 0
|
3月前
|
Java 测试技术 数据库连接
【SpringBoot(四)】还不懂文件上传?JUnit使用?本文带你了解SpringBoot的文件上传、异常处理、组件注入等知识!并且带你领悟JUnit单元测试的使用!
Spring专栏第四章,本文带你上手 SpringBoot 的文件上传、异常处理、组件注入等功能 并且为你演示Junit5的基础上手体验
904 2
|
4月前
|
人工智能 自然语言处理 测试技术
AI测试平台的用例管理实践:写得清晰,管得高效,执行更智能
在测试过程中,用例分散、步骤模糊、回归测试效率低等问题常困扰团队。霍格沃兹测试开发学社推出的AI测试平台,打通“用例编写—集中管理—智能执行”全流程,提升测试效率与覆盖率。平台支持标准化用例编写、统一管理操作及智能执行,助力测试团队高效协作,释放更多精力优化测试策略。目前平台已开放内测,欢迎试用体验!