基于沙盒的微服务测试方法、装置、设备和存储介质制造方法及图纸

技术编号:30441250 阅读:16 留言:0更新日期:2021-10-24 18:29
本发明专利技术公开了一种基于沙盒的微服务测试方法,能够解决现有技术中系统资源利用率低以及沙盒部署效率低的问题,所述方法包括:当接收到用于测试被测微服务的测试请求时,确定所述被测微服务所属的私有沙盒;获取与所述私有沙盒相关联的公共沙盒,其中,所述公共沙盒内存储有在测试所述被测微服务时所依赖的其他微服务;确定所述测试请求在所述私有沙盒和/或所述公共沙盒中的请求链路;根据所述请求链路确定所述被测微服务的测试结果。本发明专利技术还公开了一种基于沙盒的微服务测试装置、一种计算机设备和一种计算机可读存储介质。机设备和一种计算机可读存储介质。机设备和一种计算机可读存储介质。

【技术实现步骤摘要】
基于沙盒的微服务测试方法、装置、设备和存储介质


[0001]本专利技术涉及数据处理
,具体涉及一种基于沙盒的微服务测试方法、装置、计算机设备和计算机可读存储介质。

技术介绍

[0002]目前,大多数产品会采用微服务架构进行部署,在对采用微服务架构部署的产品进行测试时,传统的测试模型的弊端便显露出来,比如,传统的测试模型无法满足测试的质量要求和效率要求。在此背景下孵化出了基于Kubernetes集群的沙盒测试模型,该沙盒测试模型基于云原生部署方式解决了传统测试模式下的诸多问题。
[0003]然而,专利技术人在研究的过程中发现,在对微服务架构的产品进行测试过程中,现有的沙盒测试模型通常会将该产品的某个待测微服务和该待测微服务的上下游微服务部署在一个沙盒内,当需要对该产品的N个待测微服务测试时,需要部署N个沙盒,且有些沙盒内可能需要部署多个相同的上下游微服务,存在系统资源利用率低且沙盒部署效率低的缺陷。

技术实现思路

[0004]本专利技术的目的在于提供了一种基于沙盒的微服务测试方法、装置、计算机设备和计算机可读存储介质,能够解决现有技术中系统资源利用率低以及沙盒部署效率低的问题。
[0005]本专利技术的一个方面提供了一种基于沙盒的微服务测试方法,所述方法包括:当接收到用于测试被测微服务的测试请求时,确定所述被测微服务所属的私有沙盒;获取与所述私有沙盒相关联的公共沙盒,其中,所述公共沙盒内存储有在测试所述被测微服务时所依赖的其他微服务;确定所述测试请求在所述私有沙盒和/或所述公共沙盒中的请求链路;根据所述请求链路确定所述被测微服务的测试结果。
[0006]可选地,所述确定所述被测微服务所属的私有沙盒的步骤包括:解析出所述测试请求的请求头;检测所述请求头中是否携带有沙盒标签;若携带,将与所述请求头携带的沙盒标签相关联的沙盒作为所述私有沙盒;若不携带,解析出所述测试请求的源地址,查询与所述源地址相关联的沙盒标签,并将与查询到的沙盒标签相关联的沙盒作为所述私有沙盒。
[0007]可选地,所述确定所述测试请求在所述私有沙盒和/或所述公共沙盒中的请求链路,包括:解析出所述测试请求的目的地址;根据所述目标地址确定用于接收所述测试请求的沙盒;当用于接收所述测试请求的沙盒为所述私有沙盒时,将所述目的地址作为所述请求链路中的一个节点,并将所述测试请求发送至所述目的地址;当用于接收所述测试请求的沙盒为所述公共沙盒时,根据所述目的地址确定所述公共沙盒中用于接收所述测试请求的实际地址,将所述实际地址作为所述请求链路中的一个节点,并将所述测试请求发送至所述实际地址。
[0008]可选地,所述根据所述目标地址确定用于接收所述测试请求的沙盒的步骤包括:当所述目的地址为IP地址时,确定所述目的地址下的进程集;确定与所述进程集相关联的沙盒标签;将与确定出的沙盒标签相关联的沙盒作为用于接收所述测试请求的沙盒。
[0009]可选地,所述确定所述目的地址下的进程集的步骤包括:确定承载有所述私有沙盒和所述公共沙盒的集群空间;判断所述目的地址所指向的空间是否位于所述集群空间内;若位于,在所述集群空间内确定所述目的地址下的进程集。
[0010]可选地,所述根据所述目标地址确定用于接收所述测试请求的沙盒的步骤包括:当所述目的地址为域名地址时,在所述集群空间内获取所述私有沙盒中的各个微服务的域名地址;判断获取的域名地址中是否包含所述目的地址;若包含,确定用于接收所述测试请求的沙盒为所述私有沙盒。
[0011]可选地,所述根据所述目标地址确定用于接收所述测试请求的沙盒的步骤还包括:若获取的域名地址中不包含所述目的地址,在所述私有沙盒内获取预先备份的与所述公共沙盒中的各个微服务对应的访问入口;判断获取的访问入口中是否包含所述目的地址;若包含,确定用于接收所述测试请求的沙盒为所述公共沙盒。
[0012]可选地,所述当用于接收所述测试请求的沙盒为所述公共沙盒时,根据所述目的地址确定所述公共沙盒中用于接收所述测试请求的实际地址,将所述实际地址作为所述请求链路中的一个节点,并将所述测试请求发送至所述实际地址的步骤包括:当用于接收所述测试请求的沙盒为所述公共沙盒时,在所述私有沙盒内获取预先备份的与所述公共沙盒中的各个微服务对应的服务名称和实际地址;从获取的服务名称中确定出与所述目的地址相关联的服务名称;从获取的实际地址中筛选出与确定出的服务名称相关联的实际地址,将筛选出的实际地址作为所述请求链路中的一个节点,并将所述测试请求发送至筛选出的实际地址。
[0013]可选地,所述从获取的服务名称中确定出与所述目的地址相关联的服务名称的步骤包括:当所述目的地址为IP地址时,确定所述进程集上挂载的微服务;从所述获取的服务名称中确定出与所述进程集上挂载的微服务同名的服务名称。
[0014]可选地,所述从获取的服务名称中确定出与所述目的地址相关联的服务名称的步骤包括:当所述目的地址为域名地址时,从所述获取的访问入口中筛选出包含所述目的地址的访问入口;从所述获取的服务名称中确定出与筛选出的访问入口相关联的服务名称。
[0015]本专利技术的另一个方面提供了一种基于沙盒的微服务测试装置,所述装置包括:第一确定模块,用于当接收到用于测试被测微服务的测试请求时,确定所述被测微服务所属的私有沙盒;获取模块,用于获取与所述私有沙盒相关联的公共沙盒,其中,所述公共沙盒内存储有在测试所述被测微服务时所依赖的其他微服务;第二确定模块,用于确定所述测试请求在所述私有沙盒和/或所述公共沙盒中的请求链路;第三确定模块,用于根据所述请求链路确定所述被测微服务的测试结果。
[0016]本专利技术的再一个方面提供了一种计算机设备,所述计算机设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一实施例所述的基于沙盒的微服务测试方法。
[0017]本专利技术的又一个方面提供了一种计算机可读存储介质,其上存储有计算机程序,上述计算机程序被处理器执行时实现上述任一实施例所述的基于沙盒的微服务测试方法。
[0018]本专利技术提供的基于沙盒的微服务测试方法,提供了两种类型的沙盒:私有沙盒和公共沙盒,在对被测微服务进行测试时,只需依赖于提前配置好的公共沙盒即可完成测试目的,且测试每个被测微服务时所依赖的其他微服务只需在公共沙盒中布置一次,不同被测微服务所依赖的相同微服务无需重复布置,然后通过测试请求在私有沙盒和/或公共沙盒中的请求链路即可确定最终的测试结果,解决了现有技术中系统资源利用率低以及沙盒部署效率低的问题。
附图说明
[0019]通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0020]图1示出了本专利技术实施例一提供的基于沙盒的微服务测试方法的流程图;
[0021]图2示出了本专利技术实施例本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于沙盒的微服务测试方法,其特征在于,所述方法包括:当接收到用于测试被测微服务的测试请求时,确定所述被测微服务所属的私有沙盒;获取与所述私有沙盒相关联的公共沙盒,其中,所述公共沙盒内存储有在测试所述被测微服务时所依赖的其他微服务;确定所述测试请求在所述私有沙盒和/或所述公共沙盒中的请求链路;根据所述请求链路确定所述被测微服务的测试结果。2.根据权利要求1所述的方法,其特征在于,所述确定所述被测微服务所属的私有沙盒的步骤包括:解析出所述测试请求的请求头;检测所述请求头中是否携带有沙盒标签;若携带,将与所述请求头携带的沙盒标签相关联的沙盒作为所述私有沙盒;若不携带,解析出所述测试请求的源地址,查询与所述源地址相关联的沙盒标签,并将与查询到的沙盒标签相关联的沙盒作为所述私有沙盒。3.根据权利要求1所述的方法,其特征在于,所述确定所述测试请求在所述私有沙盒和/或所述公共沙盒中的请求链路,包括:解析出所述测试请求的目的地址;根据所述目标地址确定用于接收所述测试请求的沙盒;当用于接收所述测试请求的沙盒为所述私有沙盒时,将所述目的地址作为所述请求链路中的一个节点,并将所述测试请求发送至所述目的地址;当用于接收所述测试请求的沙盒为所述公共沙盒时,根据所述目的地址确定所述公共沙盒中用于接收所述测试请求的实际地址,将所述实际地址作为所述请求链路中的一个节点,并将所述测试请求发送至所述实际地址。4.根据权利要求3所述的方法,其特征在于,所述根据所述目标地址确定用于接收所述测试请求的沙盒的步骤包括:当所述目的地址为IP地址时,确定所述目的地址下的进程集;确定与所述进程集相关联的沙盒标签;将与确定出的沙盒标签相关联的沙盒作为用于接收所述测试请求的沙盒。5.根据权利要求4所述的方法,其特征在于,所述确定所述目的地址下的进程集的步骤包括:确定承载有所述私有沙盒和所述公共沙盒的集群空间;判断所述目的地址所指向的空间是否位于所述集群空间内;若位于,在所述集群空间内确定所述目的地址下的进程集。6.根据权利要求5所述的方法,其特征在于,所述根据所述目标地址确定用于接收所述测试请求的沙盒的步骤包括:当所述目的地址为域名地址时,在所述集群空间内获取所述私有沙盒中的各个微服务的域名地址;判断获取的域名地址中是否包含所述目的地址;若包含,确定用于接收所述测试请求的沙盒为所述私有沙...

【专利技术属性】
技术研发人员:边同贺陈天梅
申请(专利权)人:广联达科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1