项目编号: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请求调用。

系统整体的架构图

系统功能模块图

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

  1. 用户管理模块:此模块主要实现对系统用户的管理,主要完成用系统操作用户的新增和查询操作。
  2. 项目管理模块:此模块主要实现对项目的信息管理功能。管理员登陆系统后可以添加要进行测试的项目信息,可以根据需要进行查询、修改或删除项目信息。
  3. 模块管理功能:此模块主要实现对项目的功能模块管理功能。管理员登陆系统后可以添加要进行测试项目的功能模块信息,可以根据需要进行查询、修改或删除项目功能模块信息。
  4. 接口管理功能:此模块主要实现对项目中定义的接口进行管理。管理员登陆系统后可以添加要进行测试项目的接口信息,可以根据需要进行查询、修改或删除项目接口信息。
  5. 测试管理功能:此模块主要实现对对定义的测试用例和测试合集进行管理。管理员登陆系统后可以添加为测试设计的测试用例信息,可以根据设计好的测试用例实现在线执行测试。也可以添加测试合集,同时测试多个接口的功能,并将测试的结果记录在数据库表中。

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

3.2.1  用户管理

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

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

图3-3 用户管理模块

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

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

3.2.2  项目管理

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

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

图3-4 项目管理模块

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

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

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

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

3.2.3  模块管理

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

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

图3-5 模块管理模块

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

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

3.2.4
 接口管理模块

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

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

图3-6 接口管理模块

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

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

3.2.5  测试管理

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

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

图3-7 测试用例列表

图3-8 测试用例详情

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

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

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

图3-9 测试合集列表

3.2.6  用户登陆

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

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

图3-11用户登陆界面

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

基于Springboot实现的自动化测试平台相关推荐

  1. Java项目-基于Springboot实现的自动化测试平台

    项目编号:BS-XX-063 运行环境: 开发工具:IDEA / ECLIPSE 管理工具:MAVEN 数据库:MYSQL5.7 应用服务器:TOMCAT8.5.31 开发方式:前后端分离 开发技术: ...

  2. 计算机毕业设计springboot基于Springboot的在线教育平台的设计与实现8qecq源码+系统+程序+lw文档+部署

    计算机毕业设计springboot基于Springboot的在线教育平台的设计与实现8qecq源码+系统+程序+lw文档+部署 计算机毕业设计springboot基于Springboot的在线教育平台 ...

  3. [附源码]计算机毕业设计基于springboot的高校资源共享平台

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  4. springboot毕设项目基于springboot的模拟面试平台 7tch0(java+VUE+Mybatis+Maven+Mysql)

    springboot毕设项目基于springboot的模拟面试平台 7tch0(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8.5 ...

  5. Springboot毕设项目基于springboot的模拟面试平台 7tch0java+VUE+Mybatis+Maven+Mysql+sprnig)

    Springboot毕设项目基于springboot的模拟面试平台 7tch0java+VUE+Mybatis+Maven+Mysql+sprnig) 项目运行 环境配置: Jdk1.8 + Tomc ...

  6. 基于jmeter的接口自动化测试平台

    基于jmeter的接口自动化测试平台安装说明及文件包:  下载地址 一.背景 1.隶属于研发中心部门,主要研发微服务中台产品.项目产品: 2.相关产品系统对外提供批量的接口api,需要人工进行接口测试 ...

  7. 基于Springboot的书籍学习平台

    摘要 首先,论文一开始便是清楚的论述了平台的研究内容.其次,剖析平台需求分析,弄明白"做什么",分析包括业务分析和业务流程的分析以及用例分析,更进一步明确平台的需求.然后在明白了平 ...

  8. 基于springboot的家装平台设计与实现

    项目描述 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等.这里根据疫情当下,你 ...

  9. Springboot毕设项目基于SpringBoot的民宿平台的开发与实现4p26z(java+VUE+Mybatis+Maven+Mysql)

    Springboot毕设项目基于SpringBoot的民宿平台的开发与实现4p26z(java+VUE+Mybatis+Maven+Mysql) 项目运行 环境配置: Jdk1.8 + Tomcat8 ...

最新文章

  1. OpenCV之imwrite()等基本操作
  2. el replace 表达式_EL表达式截取字符串 各种字符串操作的方式全解 泽0715新浪博客...
  3. 基于matlab水轮机期刊,基于MATLAB/SIMULINK的水轮机调节系统寻优
  4. linux 怎么设置静态ip,如何在Linux中设置静态IP地址和配置网络
  5. netbeans7.4_使用NetBeans 7.4 beta提示进行更好的基于JUnit的单元测试
  6. Java与MySQL连接报错_java连接数据库报错(
  7. 95-134-105-源码-维表-维表优化
  8. sprintf参数包含本身时,结果并不符合预期
  9. 《Windows黑客编程技术》—— 学习历程
  10. 人力资源管理系统需求分析说明书
  11. 微信小程序 渲染层网络错误_渲染层网络层错误 微信小程序开发 - 云计算资讯 - 服务器之家...
  12. PART 1:基于大数据人才岗位招聘情况对数据进行清洗、初步分析
  13. uni-app使用阿里iconfont多色图标
  14. 感冒身体差的不要喝酸奶
  15. 2012-11-26四六级词汇#9317;-----…
  16. Java *2.22(财务应用:货币单位)改写程序清单2-10,解决将double转int可能会造成精度损失问题。以整数值作为输入,其最后两位代表的是美分币值。例如:1156就表示11美元56美分。
  17. Linux虚拟声卡有吱吱声,解决Win7+8系统爆音有杂音吱吱声
  18. osg自定义操作器实现视图缩放
  19. 如何将网站发布和部署到本地服务器详细教程
  20. R语言处理缺失数据的5个常用包

热门文章

  1. GeniePath:Graph Neural Networks with Adaptive Receptive Paths
  2. LeetCode 字符串(简单题)
  3. win10+ ubuntu16.04 双系统及无线、输入法、deepin-wineQQ微信等配置(亲测)
  4. npm 的 --unsafe-perm 参数
  5. linux postfix 虚拟,postfix虚拟别名域的配置
  6. post攻击 xxs_如何正确防御xss攻击
  7. QT -- TcpSocket实例,使用Qt中的tcp通信协议,构建客户端和服务端,实现局域网通信软件功能
  8. 如何正确卸载Oracle避免卸载Oracle不干净解决一
  9. python集合增加元素_python集合的新增元素方法整理
  10. 遥感影像语义分割——影像拼接、去背景