一种基于分布式服务总线自动化接口测试系统
文献发布时间:2023-06-19 09:38:30
技术领域
本发明涉及接口测试技术领域,具体来说,涉及一种基于分布式服务总线自动化接口测试系统。
背景技术
近年来,越来越多的企业组织需要以API方式把自己的核心业务资产贯通整理并开放给合作伙伴或让第三方的应用整合,以发掘业务模式、提高服务水平、拓展合作空间。统一服务总线(USB)面向帮助企业在自己的多个系统之间或与合作伙伴以及第三方的系统之间实现跨系统跨协议的服务能力互通。各个系统以发布、订购服务API的形式相互开放,并对服务API进行统一管理和组织、围绕API互动,实现企业内部各部门之间、以及企业与合作伙伴或者第三方开发者之间业务能力的融合、重塑、和创新。
但是现有的技术中存在下面三个缺点:
1、JVM 版本要求1.8以上;2、服务必须为JSON接口提供;3、必须添加指定接口、实体说明否则自动化测试完成不能完成。
发明内容
针对相关技术中的上述技术问题,本发明提出一种基于分布式服务总线自动化接口测试系统,能够克服现有技术的上述不足。
为实现上述技术目的,本发明的技术方案是这样实现的:
一种基于分布式服务总线自动化接口测试系统,该系统包括:
API服务总线模块、API管理组织模块、API运维监控模块,其中,
所述API服务总线模块用于提供高可用、稳定高效、可线性扩容的服务和控制访问,包括协议转换模块、认证鉴权模块、服务控制模块;
所述API管理组织模块用于管理和组织API全环节流程,包括服务发布模块、服务授权模块、服务消费模块,其中,管理和组织可灵活定制设定;
所述服务发布模块用于发布服务信息,其中,所述服务信息包括新版服务发布、旧版服务发布、服务组管理、发布订购服务审批;
所述API运维监控模块用于采用各种运维管控工具获取及时详尽的系统状态信息,包括日志监控模块、系统管理模块。
进一步的,所述协议转换模块支持常用协议服务的接入和开放,支持复杂类型和结构的出入参定义及高度定制化、灵活的数据变换。
进一步的,所述认证鉴权模块可对接企业自有账号认证系统。
进一步的,所述服务控制模块至少用于提供服务流量控制、黑白名单。
进一步的,所述服务授权模块的服务授权方式可灵活设定。
进一步的,所述日志监控模块至少包括系统管控模块、服务消费模块和管理审计日志模块。
进一步的,所述系统管理模块包括实例管理模块、用户管理模块、系统角色权限定制模块。
本发明的有益效果:通过该系统,提供高可用、稳定高效、可线性扩容的服务能力以及丰富全面的访问控制;支持常用协议服务的接入和开放(HTTP/Web Service/JDBC),同时支持复杂类型和结构的出入参定义及高度定制化、灵活的数据变换,可对接企业自有账号认证系统,实现灵活的访问鉴权;提供服务流量控制、凭证访问控制和时间段内开放等功能;提供可灵活定制的 API 全环节管理和组织;提供服务发布、服务组管理、服务(发布、订购)审批;提供灵活的服务授权方式;提供服务调用 SDK及服务消费计量、限量能力;提供多样的运维管控工具用以获取及时详尽的系统状态信息,系统维护方便快捷;提供系统管控、服务消费与管理审计日志,详尽的服务调用状况统计;提供实例管理、用户管理、灵活的系统角色权限定制能力。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本发明实施例所述的一种基于分布式服务总线自动化接口测试系统的原理框图;
图2是根据本发明实施例所述的一种基于分布式服务总线自动化接口测试系统的业务架构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,根据本发明实施例所述的一种基于分布式服务总线自动化接口测试系统,包括:API服务总线模块、API管理组织模块、API运维监控模块,其中,
所述API服务总线模块用于提供高可用、稳定高效、可线性扩容的服务和控制访问,包括协议转换模块、认证鉴权模块、服务控制模块;
所述API管理组织模块用于管理和组织API全环节流程,包括服务发布模块、服务授权模块、服务消费模块,其中,管理和组织可灵活定制设定;
所述服务发布模块用于发布服务信息,其中,所述服务信息包括新版服务发布、旧版服务发布、服务组管理、发布订购服务审批;
所述API运维监控模块用于采用各种运维管控工具获取及时详尽的系统状态信息,包括日志监控模块、系统管理模块。
在本发明的一个具体实施例中,所述协议转换模块支持常用协议服务的接入和开放,支持复杂类型和结构的出入参定义及高度定制化、灵活的数据变换。
在本发明的一个具体实施例中,所述认证鉴权模块可对接企业自有账号认证系统。
在本发明的一个具体实施例中,所述服务控制模块至少用于提供服务流量控制、黑白名单。
在本发明的一个具体实施例中,所述服务授权模块的服务授权方式可灵活设定。
在本发明的一个具体实施例中,所述日志监控模块至少包括系统管控模块、服务消费模块和管理审计日志模块。
在本发明的一个具体实施例中,所述系统管理模块包括实例管理模块、用户管理模块、系统角色权限定制模块。
为了方便理解本发明的上述技术方案,以下对本发明的上述技术方案进行详细说明。
如图2所示,通过统一服务总线平台对子应用开放的数据接口进行统一的注册和调用,方便开发人员快速查找和对接接口以及了解接口的相关对接要求,如接口的输入参数要求、输出结果格式和接口的开发人员信息等
通过统一服务总线平台将该类型应用的数据库信息进行注册,根据业务的要求整理数据查询语句和条件并发布为服务,第三方应用通过统一的调用方式即可获取相应的数据查询结果。
通过统一服务总线平台将该类型数据接口统一注册为服务,平台将自动转换访问的数据类型为主流的Rest接口,第三方应用通过统一的调用方式即可获取相应的数据查询结果。
将统一服务总线平台部署到DMZ区,将A应用和B应用的数据接口注册为服务,应用间相互调用即可通过统一的调用方式进行服务调用和数据获取。
通过统一服务总线平台将数据接口注册为服务,服务提供者可设置服务的开放状态、服务每天访问上限、每个订阅者的访问上限和服务的开放时间等信息,服务消费者应用是JAVA语言开发,可通过平台提供工具包快速调用,其他语言可根据文档进行对接,所有信息全部加密存储,保障用户信息安全。
通过统一服务总线平台将编排的服务产生的接口形成自动化的接口测试功能,无需专门编写接口测试用力,注册到服务中心,即生成对用的测试用例以及用例脚本。
处理系统间服务互通和管理的应用平台,核心功能是帮助各系统之间,实现跨系统跨协议跨网络的服务能力互通。
各个系统以发布、订阅服务的形式相互开放,并对服务进行统一管理和认证,实现各方业务能力的融合、重塑和创新。并自带自动化测试功能保障服务的可用性以及一致性
应用场景一:内部应用间调用
一个实施项目由多个应用组成,各子应用间需要相互调用,如子应用开放的数据接口被其他子应用调用,一旦该接口有调整则其他子应用均需根据变化调整,并且没有统一的日志记录各子应用相互调用情况。通过统一服务总线平台对子应用开放的数据接口进行统一的注册和调用,方便开发人员快速查找和对接接口以及了解接口的相关对接要求,如接口的输入参数要求、输出结果格式和接口的开发人员信息等。
应用场景二:无运维应用的数据开放
在实施项目的过程中,经常根据用户的要求对接各类型应用数据,其中包括目前在使用但没有运维的应用,该类型应用无法提供任何数据接口,只能通过相关文档查询应用数据通过统一服务总线平台将该类型应用的数据库信息进行注册,根据业务的要求整理数据查询语句和条件并发布为服务,第三方应用通过统一的调用方式即可获取相应的数据查询结果。
应用场景三:老旧应用的数据开放
实施项目的过程中,会遇到一些早年开发的数据接口(WebService),由于各种原因无法提供目前主流的Rest数据接口,导致各应用为对接此类型数据接口引入大量底层代码和框架,对系统稳定高效运行形成了隐患和负担。通过统一服务总线平台将该类型数据接口统一注册为服务,平台将自动转换访问的数据类型为主流的Rest接口,第三方应用通过统一的调用方式即可获取相应的数据查询结果。
应用场景四:数据抽取和巡检
在实施项目的过程中,会根据业务需求抽取第三方应用的数据,为保障数据的持续可用性,会对接入的数据进行个性化的巡检,以保障数据随时可用,数据故障随时提醒,并全程记录接入数据的巡检日志通过统一服务总线平台将需要抽取和巡检的数据接口注册为服务,平台批量或逐个服务设置巡检策略,特殊巡检需求支持通过表达式定制,可通过日期区间、巡检结果和服务信息等条件查询巡检日志。
应用场景五:数据穿透和转发
在实施项目的过程中,由于网络环境的限制,导致A应用和B应用不在一个网络,常用的解决方案是在两个网络间设置DMZ区打通两边数据,在DMZ去进行数据的转发。将统一服务总线平台部署到DMZ区,将A应用和B应用的数据接口注册为服务,应用间相互调用即可通过统一的调用方式进行服务调用和数据获取。
应用场景六:应用间路由安全与限制
在实施项目的过程中,经常会与第三方应用进行数据的交互,作为数据的提供方:担心提供出去的接口被非法调用和高并发调用等情况。作为服务消费方:担心找不到想要的数据服务和数据调用是否方便快捷。通过统一服务总线平台将数据接口注册为服务,服务提供者可设置服务的开放状态、服务每天访问上限、每个订阅者的访问上限和服务的开放时间等信息,服务消费者应用是JAVA语言开发,可通过平台提供工具包快速调用,其他语言可根据文档进行对接,所有信息全部加密存储,保障用户信息安全。
产品特点:
1、高并发:基于Gateway架构研发,保障平台稳定高效运行;
2、异构接入:将Rest、WebService和JDBC协议数据统一接入;
3、跨网运行:在数据提供者和消费者网络不通的情况下进行数据调用;
4、快速搭建:服务实例应用无需修改配置,可结合Docker快速部署应用;
5、数据开放:开放数据库中存量数据为Rest数据接口;
6、数据安全:加密存储服务注册信息,保障数据存储安全;
7、独立运行:核心数据缓存本地,不依赖服务管理应用和数据库独立运行;
8、认证鉴权:通过非对称加密技术验证每次数据调用;
9、自动化测试与运维:通过自动化手动保障服务的可用性。
功能主要包括以下三个方面:
1.API服务总线
提供高可用、稳定高效、可线性扩容的服务能力以及丰富全面的访问控制。
(1)协议转换
支持常用协议服务的接入和开放(HTTP/Web Service/JDBC),同时支持复杂类型和结构的出入参定义及高度定制化、灵活的数据变换;
(2)认证鉴权
可对接企业自有账号认证系统,实现灵活的访问鉴权;
(3)服务控制
提供服务流量控制、黑白名单等更多功能;
2.API管理组织
提供可灵活定制的 API 全环节管理和组织。
(1)服务发布
提供服务发布(新版)、服务发布(旧版)、服务组管理、服务(发布、订购)审批;
(2)服务授权
提供灵活的服务授权方式。
(3)服务消费
提供服务调用SDK及服务消费计量、限量能力
3.API运维监控
提供多样的运维管控工具用以获取及时详尽的系统状态信息,系统维护方便快捷。
(1)日志监控
提供系统管控、服务消费与管理审计日志,详尽的服务调用状况统计。
(2)系统管理
提供实例管理、用户管理、灵活的系统角色权限定制能力。
综上所述,借助于本发明的上述技术方案,通过该系统,提供高可用、稳定高效、可线性扩容的服务能力以及丰富全面的访问控制;支持常用协议服务的接入和开放(HTTP/Web Service/JDBC),同时支持复杂类型和结构的出入参定义及高度定制化、灵活的数据变换,可对接企业自有账号认证系统,实现灵活的访问鉴权;提供服务流量控制、凭证访问控制和时间段内开放等功能;提供可灵活定制的 API 全环节管理和组织;提供服务发布、服务组管理、服务(发布、订购)审批;提供灵活的服务授权方式;提供服务调用 SDK及服务消费计量、限量能力;提供多样的运维管控工具用以获取及时详尽的系统状态信息,系统维护方便快捷;提供系统管控、服务消费与管理审计日志,详尽的服务调用状况统计;提供实例管理、用户管理、灵活的系统角色权限定制能力。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
- 一种基于分布式服务总线自动化接口测试系统
- 一种基于CANFD总线的自动化测试系统及测试方法