微服务测试方法及装置制造方法及图纸

技术编号:17841732 阅读:21 留言:0更新日期:2018-05-03 21:54
本发明专利技术实施例公开了一种微服务测试方法及装置,所述方法包括:构建公共环境与项目环境,其中,所述公共环境包含至少一个微服务的当前版本,所述项目环境包含至少一个微服务的更新版本;在待测试的目标微服务的测试过程中,获取到任意微服务调用请求时,优先在所述项目环境中判断是否存在待调用微服务;如果所述项目环境中存在待调用微服务,则从所述项目环境中执行调用请求,如果所述项目环境中不存在待调用微服务,则从所述公共环境中执行所述调用请求。本发明专利技术实施例能够实现目标微服务的快速测试,提高了微服务的测试效率。

Micro service testing method and device

An embodiment of the invention discloses a micro service testing method and device, which comprises the construction of a common environment and a project environment, in which the public environment includes the current version of at least one micro service, and the project environment contains at least one updated version of the micro service; the test of the target micro service is tested. In the process, when an arbitrary micro service call request is obtained, priority is given to determine whether there is a invoke micro service in the project environment; if there is a call micro service in the project environment, the call request is executed from the project environment, and if the project environment does not exist to be invoked micro service, then the public is from the public. Execution of the call request in a common environment. The embodiment of the invention can quickly test the target micro service and improve the testing efficiency of the micro service.

【技术实现步骤摘要】
微服务测试方法及装置
本专利技术实施例涉及信息网络
,尤其涉及一种微服务测试方法及装置。
技术介绍
随着信息技术的快速发展,应用软件架构发生了巨大变化,传统的整体式架构转变为新型的微服务架构。微服务架构是一项在云中部署应用和服务的新技术。微服务是由原有的单个业务系统被拆分为多个可以独立开发、涉及、运行以及维护的小应用。微服务是一种架构风格,例如,一个应用程序需要至少一个微服务组成。系统中的各个微服务可被独立部署,各个微服务之间是松耦合的。每个微服务作为一个小应用,仅关注于完成一件任务并很好地完成该任务。并且,当技术人员对微服务进行升级时,经常对该微服务进行测试,以保证更新的微服务能够与软件应用中其他的微服务正常配合使用。但是,在现有技术中,对更新后的微服务进行测试时,需构建微服务的测试环境。由于各个微服务之间有较强的调用关系,所以需要有全量的微服务部署至测试环境中。如此将导致以下问题:构建微服务测试环境耗时长,如通常需要2至3天才能搭建好;容易出错和遗漏,如在测试过程中需花费大量时间定位是否是测试环境问题;以及,测试环境不稳定,如常常因为一个微服务的问题导致测试受阻等问题。
技术实现思路
本专利技术实施例提供一种微服务测试方法及装置,有效改善了现有技术中微服务测试效率低的情况。第一方面,本专利技术实施例提供了一种微服务测试方法,包括:构建公共环境与项目环境,其中,所述公共环境包含至少一个微服务的当前版本,所述项目环境包含至少一个微服务的更新版本;在待测试的目标微服务的测试过程中,获取到任意微服务调用请求时,优先在所述项目环境中判断是否存在待调用微服务;如果所述项目环境中存在待调用微服务,则从所述项目环境中执行调用请求,如果所述项目环境中不存在待调用微服务,则从所述公共环境中执行所述调用请求。可选的,所述项目环境包含多个,在待测试的目标微服务的测试之前,还包括:按照应用程序的功能对所述项目环境进行分类;接收用户的访问请求;根据所述访问请求的属性信息确定目标项目环境以及与所述目标微服务相关的第一微服务。可选的,根据所述访问请求的属性信息确定目标项目环境以及与所述目标微服务相关的第一微服务,包括:基于配置文件,根据所述访问请求的属性信息确定目标项目环境以及与所述目标微服务相关的第一微服务,其中,所述配置文件包含所述公共环境与所述项目环境的存储信息。可选的,还包括:根据待测试的目标微服务的测试结果,判断所述目标微服务是否运行正常。可选的,构建所述公共环境与所述项目环境包括:基于全部微服务的当前版本构建公共环境;在获取到更新版本的微服务时,基于更新版本的微服务构建项目环境。第二方面,本专利技术实施例还提供了一种微服务测试装置,包括:环境构建模块,用于构建公共环境与项目环境,其中,所述公共环境包含至少一个微服务的当前版本,所述项目环境包含至少一个微服务的更新版本;判断模块,用于在待测试的目标微服务的测试过程中,获取到任意微服务调用请求时,优先在所述项目环境中判断是否存在待调用微服务;调用请求执行模块,用于如果所述项目环境中存在待调用微服务,则从所述项目环境中执行调用请求,如果所述项目环境中不存在待调用微服务,则从所述公共环境中执行所述调用请求。可选的,还包括:目标确定模块,用于在待测试的目标微服务的测试之前,按照应用程序的功能对所述项目环境进行分类;接收用户的访问请求;根据所述访问请求的属性信息确定目标项目环境以及与所述目标微服务相关的第一微服务。可选的,所述目标确定模块具体用于:基于配置文件,根据所述访问请求的属性信息确定目标项目环境以及与所述目标微服务相关的第一微服务,其中,所述配置文件包含所述公共环境与所述项目环境的存储信息。可选的,还包括:运行判断模块,用于根据待测试的目标微服务的测试结果,判断所述目标微服务是否运行正常。可选的,构建所述公共环境与所述项目环境包括:基于全部微服务的当前版本构建所述公共环境;在获取到更新版本的微服务时,基于更新版本的微服务构建所述项目环境。本专利技术实施例提供了一种微服务测试方法及装置,通过将微服务的当前版本存储至公共环境,不对公共环境做任何处理,同时将更新版本的微服务存储至项目环境,保证了公共环境中微服务的稳定性,也避免了构建微服务测试环境耗时长,再对目标微服务进行测试的过程中,优先在项目环境中判断是否存在待调用微服务,若存在,则从项目环境中调用待调用微服务,通过设定项目环境与公共环境中微服务调用的优先级,能够实现目标微服务的快速测试,提高了微服务的测试效率。附图说明图1A是本专利技术实施例一中的一种微服务测试方法的流程图;图1B为本专利技术实施例提供的一种应用程序测试环境的示意图;图2A是本专利技术实施例二中的一种微服务测试方法的流程图;图2B是本专利技术实施例二中的一种应用程序测试环境的示意图;图3是本专利技术实施例三中的一种微服务测试装置的结构图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。实施例一图1A为本专利技术实施例一提供的一种微服务测试方法的流程图,本实施例可适用于各种微服务测试的情况,该方法可以由本专利技术实施例提供的微服务测试装置来执行,该装置可采用软件和/或硬件的方式实现,该装置可集成在任何提供微服务测试功能的设备中,例如可以是电脑等,如图1A所示,具体包括:S110、构建公共环境与项目环境。其中,所述公共环境包含至少一个微服务的当前版本,所述项目环境包含至少一个微服务的更新版本。目前,信息化时代,智能手机、电脑等电子产品成为人们生活、学习、工作的必备品,该类电子产品中包含多种多样的应用程序。在应用程序使用过程中,会发现许多问题,这些问题有可能导致数据的不完整或者系统的崩溃等,所以需要升级以修正这些bug。另外,当应用程序需要适配、优化、上新功能以及用户界面美观等也需要更新。由于微服务的盛行,应用软件均被拆分为多个独立的小应用,而当应用程序升级时,通常是该应用程序中的一个或几个微服务进行开发。开发后的微服务需要对其进行测试,保证其性能稳定性以及与其他微服务适配,才能将该开发的微服务投入使用。本实施例中的公共环境可为测试微服务过程中的基础环境,即包含了组成应用程序的所有微服务的当前版本。需要说明的是,公共环境中的每个微服务可与线上微服务保持一致,且数量也与线上微服务的数量。其中,线上微服务可指市场上使用的公开版本,即当前版本。项目环境指的是为了测试新开发的微服务而建立的测试环境,只包含了新开发的微服务。当项目环境为一个时,该项目环境包含了应用程序中各项功能的所有新开发的微服务;当项目环境为多个时,可将项目环境按照应用程序的功能进行分类,各个项目环境中包含至少一个新开发的微服务。其中,新开发的微服务即是微服务的更新版本。具体的,开发人员可以通过编程来构建公共环境与项目环境。通过构建公共环境与项目环境以对更新版本的微服务进行测试。例如微信,假设微信由400个微服务构成,以实现微信所有功能的正常运行,其中,登录功能需要7个微服务相互协作完成。如果开发人员对微信的登录功能进行优化,且对实现该功能的3个微服务进行了升级,那么将本文档来自技高网...
微服务测试方法及装置

【技术保护点】
一种微服务测试方法,其特征在于,包括:构建公共环境与项目环境,其中,所述公共环境包含至少一个微服务的当前版本,所述项目环境包含至少一个微服务的更新版本;在待测试的目标微服务的测试过程中,获取到任意微服务调用请求时,优先在所述项目环境中判断是否存在待调用微服务;如果所述项目环境中存在待调用微服务,则从所述项目环境中执行调用请求,如果所述项目环境中不存在待调用微服务,则从所述公共环境中执行所述调用请求。

【技术特征摘要】
1.一种微服务测试方法,其特征在于,包括:构建公共环境与项目环境,其中,所述公共环境包含至少一个微服务的当前版本,所述项目环境包含至少一个微服务的更新版本;在待测试的目标微服务的测试过程中,获取到任意微服务调用请求时,优先在所述项目环境中判断是否存在待调用微服务;如果所述项目环境中存在待调用微服务,则从所述项目环境中执行调用请求,如果所述项目环境中不存在待调用微服务,则从所述公共环境中执行所述调用请求。2.根据权利要求1所述的方法,其特征在于,所述项目环境包含多个,在待测试的目标微服务的测试过程之前,还包括:按照应用程序的功能对所述项目环境进行分类;接收用户的访问请求;根据所述访问请求的属性信息确定目标项目环境以及与所述目标微服务相关的第一微服务。3.根据权利要求2所述的方法,其特征在于,根据所述访问请求的属性信息确定目标项目环境以及与所述目标微服务相关的第一微服务,包括:基于配置文件,根据所述访问请求的属性信息确定目标项目环境以及与所述目标微服务相关的第一微服务,其中,所述配置文件包含所述公共环境与所述项目环境的存储信息。4.根据权利要求1-3中任一所述的方法,其特征在于,还包括:根据待测试的目标微服务的测试结果,判断所述目标微服务是否运行正常。5.根据权利要求1-3中任一所述的方法,其特征在于,构建所述公共环境与所述项目环境包括:基于全部微服务的当前版本构建所述公共环境;在获取到更新版本的微服务时,基于更新版本的微服务构建所述项目环...

【专利技术属性】
技术研发人员:王枫张俊业王世焜罗明强谢济帆
申请(专利权)人:深圳乐信软件技术有限公司
类型:发明
国别省市:广东,44

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

1