CN112527669A - 本地服务的自测方法及系统 - Google Patents
本地服务的自测方法及系统 Download PDFInfo
- Publication number
- CN112527669A CN112527669A CN202011511160.4A CN202011511160A CN112527669A CN 112527669 A CN112527669 A CN 112527669A CN 202011511160 A CN202011511160 A CN 202011511160A CN 112527669 A CN112527669 A CN 112527669A
- Authority
- CN
- China
- Prior art keywords
- service
- local
- test environment
- agent
- test
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 291
- 238000000034 method Methods 0.000 claims abstract description 36
- 230000004044 response Effects 0.000 claims abstract description 20
- 238000010998 test method Methods 0.000 claims abstract description 11
- 238000004590 computer program Methods 0.000 claims description 9
- 238000012546 transfer Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 abstract description 12
- 238000002955 isolation Methods 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012905 input function Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/02—Banking, e.g. interest calculation or account maintenance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/544—Remote
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Finance (AREA)
- Economics (AREA)
- Computer Hardware Design (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明应用于云测试领域,提供一种本地服务的自测方法,应用于本地服务自测的系统中,所述本地服务的自测系统包括本地服务、本地代理、测试环境代理、测试环境服务以及测试环境注册中心,包括:本地服务发送调用目标服务的请求信息至本地代理;当本地代理接收到请求信息后,本地代理将请求信息发送至测试环境代理;当测试环境代理接收到请求信息后,查找测试环境注册中心,以从多个测试环境服务中确定目标测试环境服务,并向目标测试环境服务发送调用请求;目标测试环境服务响应于调用请求,并将响应结果通过测试环境代理和本地代理发送至本地服务。通过本发明,能够实现本地服务和测试环境服务的隔离,避免在本地服务测试的过程中影响测试环境。
Description
技术领域
本发明实施例涉及云测试技术领域,尤其涉及一种本地服务的自测方法及系统。
背景技术
银行系统中存在众多微服务,一个银行系统的实现需要多个开发团队共同完成。当开发团队开发完一个微服务时,需要对开发完成的微服务进行测试。在现有的测试方法中,开发团队在启动本地服务时,将本地服务直接注册到测试环境的注册中心,在本地服务注册到测试环境的注册中心后,本地服务直接请求至测试环境服务,以对所述本地服务进行测试。
然而,现有的测试方法在进行本地服务进行测试时,由于所述本地服务连接至测试环境的注册中心,测试环境的注册中心在发现所述本地服务后,可能会将请求发送至所述本地服务,进而影响测试环境的测试结果。
发明内容
有鉴于此,有必要提供一种本地服务的自测方法、系统、计算机设备及计算机可读存储介质,能够解决现有技术中在进行本地服务测试时,由于所述本地服务连接至测试环境的注册中心,测试环境的注册中心在发现所述本地服务后,可能会将请求发送至本地服务,进而影响测试环境的测试结果的问题。
为实现上述目的,本发明实施例提供了一种本地服务的自测方法,应用于本地服务的自测系统中,所述本地服务的自测系统包括本地服务、本地代理、测试环境代理、测试环境服务以及测试环境注册中心,所述方法包括:
本地服务发送调用目标服务的请求信息至本地代理,所述请求信息包括:调用的接口信息以及传递参数;
当所述本地代理接收到所述请求信息后,所述本地代理将所述请求信息发送至测试环境代理;
当所述测试环境代理接收到所述请求信息后,查找所述测试环境注册中心,以从多个测试环境服务中确定目标测试环境服务,并向所述目标测试环境服务发送调用请求;及
所述目标测试环境服务响应于所述调用请求,并将响应结果通过所述测试环境代理和所述本地代理发送至所述本地服务。
可选地,所述本地服务的自测系统还包括本地注册中心,所述方法还包括:
所述本地服务和所述本地代理向所述本地注册中心进行第一服务注册;
所述测试环境代理和所述测试环境服务向所述测试环境注册中心进行第二服务注册。
可选地,所述本地服务发送目标服务的请求信息至本地代理之前,所述方法还包括:
根据服务调用需求,所述本地服务将所述本地服务依赖的所述目标服务的名称配置到所述本地代理,以使所述本地代理具有所述目标服务;
当所述本地代理启动后,所述本地代理将所述目标服务注册到所述本地注册中心。
可选地,所述本地服务发送调用目标服务的请求信息至本地代理,包括:
所述本地服务查询所述本地注册中心,以获得所述目标服务的调用接口所在的服务;
当查询结果为所述本地代理时,发送调用所述目标服务的所述请求信息至所述本地代理。
为实现上述目的,本发明实施例提供了一种本地服务的自测系统,所述系统包括本地服务、本地代理、测试环境代理、测试环境服务以及测试环境注册中心,其中:
所述本地服务发送调用目标服务的请求信息至本地代理,所述请求信息包括:调用的接口信息以及传递参数;
当所述本地代理接收到所述请求信息后,所述本地代理将所述请求信息发送至测试环境代理;
当所述测试环境代理接收到所述请求信息后,查找所述测试环境注册中心,以从多个测试环境服务中确定目标测试环境服务,并向所述目标测试环境服务发送调用请求;及
所述目标测试环境服务响应于所述调用请求,并将响应结果通过所述测试环境代理和所述本地代理发送至所述本地服务。
可选地,所述本地服务的自测系统还包括本地注册中心,其特征在于:
所述本地服务和所述本地代理向所述本地注册中心进行第一服务注册;
所述测试环境代理和所述测试环境服务向所述测试环境注册中心进行第二服务注册。
可选地,根据服务调用需求,所述本地服务将所述本地服务依赖的所述目标服务的名称配置到所述本地代理,以使所述本地代理具有所述目标服务;
当所述本地代理启动后,所述本地代理将所述目标服务注册到所述本地注册中心。
可选地,所述本地服务具体用于:
查询所述本地注册中心,以获得所述目标服务的调用接口所在的服务;
当查询结果为所述本地代理时,发送调用所述目标服务的所述请求信息至所述本地代理。
为实现上述目的,本发明实施例还提供了一种计算机设备,所述计算机设备存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现如上所述的本地服务的自测方法的步骤。
为实现上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上所述的本地服务的自测方法的步骤。
本发明实施例提供的本地服务的自测方法、系统、计算机设备及计算机可读存储介质,本地服务发送调用目标服务的请求信息至本地代理;当本地代理接收到请求信息后,本地代理将请求信息发送至测试环境代理;当测试环境代理接收到请求信息后,查找测试环境注册中心,以从多个测试环境服务中确定目标测试环境服务,并向目标测试环境服务发送调用请求;目标测试环境服务响应于调用请求,并将响应结果通过测试环境代理和本地代理发送至本地服务。本发明实施例通过新增本地代理和测试环境代理,实现本地服务和测试环境服务的隔离,避免在本地服务测试的过程中影响测试环境。
附图说明
图1为本发明实施例之本地服务的自测系统的一种示意性的环境架构图;
图2为本发明实施例之本地服务的自测方法的步骤流程图;
图3为本发明实施例之本地服务的自测方法的另一种示例性的步骤流程图;
图4为本发明实施例之本地服务的自测方法的另一种示例性的步骤流程图;
图5为图2中步骤S100的一种示例性的步骤流程图;
图6为本发明实施例之计算机设备的硬件架构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
实施例一
参阅图1,示出了本发明实施例之本地服务的自测系统的一种示意性的环境架构图。本发明实施例中所述本地服务的自测系统20包括本地服务、本地代理、测试环境代理、测试环境服务以及测试环境注册中心,其中:
本地服务用于发送调用目标服务的请求信息至本地代理,其中,所述请求信息包括:调用的接口信息以及传递参数。
具体地,当需要调用一个目标服务时,例如:当用户需要进行页面的登录时,由于所述本地代理具有登录的服务,所述本地服务通过将登录的服务请求发送至本地代理,以通过所述本地代理实现本地服务的自测。
在示例性的实施例中,所述本地服务的自测系统20还包括本地注册中心,所述本地服务和所述本地代理向所述本地注册中心进行第一服务注册;所述测试环境代理和所述测试环境服务向所述测试环境注册中心进行第二服务注册。
具体地,在所述本地服务自测之前,所述本地服务和所述本地代理均将自己的服务注册到所述本地注册中心,所述测试环境代理和所述测试环境服务也均将自己的服务注册到所述测试环境注册中心,以便所述本地服务和所述本地代理从所述本地注册中心查询需要调用服务的位置,所述测试环境代理从所述测试环境测试中心查询需要调用服务的位置。
通过所述本地注册中心,使得所述本地服务仅能将服务注册到所述本地注册中心,而不影响所述测试环境注册中心的服务注册,也即避免了所述测试环境注册中心请求至所述本地服务,从而避免了所述本地服务测试的过程中影响测试环境的测试结果。所述本地注册中心和所述测试环境注册中心可以为zookeeper。所述zookeeper是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
在示例性的实施例中,所述本地服务还根据服务调用需求,将所述本地服务依赖的所述目标服务的名称配置到所述本地代理,以使所述本地代理具有所述目标服务;
当所述本地代理启动后,所述本地代理还将所述目标服务注册到所述本地注册中心。
具体地,若本地服务需要调用登录服务,也即所述本地服务依赖所述登录服务,由于本地代理中不具有登录服务,此时,需要将所述本地服务所依赖的登录服务的名称配置到所述本地代理,以使所述本地代理具有所述本地服务所依赖的登录服务。当所述本地代理启动后,所述本地代理将所述登录服务注册到本地注册中心,以便所述本地服务从所述本地注册中心查找到所述登录服务的位置。
上述实施例通过将所述本地服务依赖的所述目标服务的名称配置到所述本地代理,以在所述本地代理上Mock一个测试环境服务的服务接口,通过创建一个虚拟的对象实现服务的测试。Mock用于模拟一些在应用中不容易构造或比较复杂的对象,从而把测试与测试边界意外的对象隔离开。Mock对象有助于从测试中消除依赖项,使得测试更单元化。通过在本地代理中Mock一个登录服务接口,使得本地代理具有登录的服务,故,所述本地服务直接调用本地代理的登录服务。然后,所述本地代理将所述目标服务注册到所述本地注册中心,能够实现本地服务与测试环境注册中心的解耦,极大地降低了本地服务与测试环境服务之间的依赖关系,避免了本地服务在测试的过程中影响测试环境。
在示例性的实施例中,所述本地服务还可以用于:查询所述本地注册中心,以获得所述目标服务的调用接口所在的服务;当查询结果为所述本地代理时,发送调用所述目标服务的所述请求信息至所述本地代理。
具体地,由于所述本地代理在启动时,将登录服务注册到所述本地注册中心。当所述本地服务调用登录服务时,所述本地服务通过查找所述本地注册中心,获得所述登录服务的调用接口在所述本地代理。此时,所述本地服务发送调用所述登录服务的请求信息至所述本地代理。本地服务通过查找本地注册中心,能够快速地查询到所述目标服务的调用接口所在的服务,以便所述本地服务基于dubbo直接调用所述目标服务的调用接口所在的服务。
需要说明的是,dubbo是一种开源分布式服务框架,使得应用可以通过高性能的远程过程调用(Remote Procedure Call,RPC)实现服务的输出和输入功能,可以提供面向接口的远程方法调用、智能容错和负载均衡以及服务自动注册和发现。
当所述本地代理接收到所述请求信息后,所述本地代理将所述请求信息发送至测试环境代理。
具体地,所述本地代理将所述请求信息通过超文本传输协议(HyperTextTransfer Protocol,HTTP)发送至所述测试环境代理。例如:所述本地代理将所述本地服务需要调用的服务接口以及需要调用的参数通过HTTP方式发送至所述测试环境代理。通过所述本地代理和所述测试环境代理,实现了所述本地服务和所述测试环境代理的隔离。
当所述测试环境代理接收到所述请求信息后,查找所述测试环境注册中心,以从多个测试环境服务中确定目标测试环境服务,并向所述目标测试环境服务发送调用请求。
具体地,由于在所述本地服务自测之前,所述测试环境代理和多个测试环境服务均会注册到所述测试环境注册中心,所述测试环境代理通过查找所述测试环境注册中心中注册的服务,以确定提供目标服务的目标测试环境服务。当查找到提供所述目标服务的目标测试环境服务后,所述测试环境代理向所述目标测试环境服务发送调用请求。例如:图1中,所述测试环境服务中具有登录服务,并将所述登录服务注册到所述测试环境注册中心,所述测试环境代理通过查找所述测试环境注册中心,确定所述登录服务在所述测试环境服务,则所述测试环境代理向所述测试环境服务调用发送调用登录服务的请求。
所述目标测试环境服务响应于所述调用请求,并将响应结果通过所述测试环境代理和所述本地代理发送至所述本地服务。
具体地,当所述目标测试环境服务接收到所述测试环境代理的调用请求后,所述目标测试环境服务响应于所述调用请求,并将响应结果发送至所述测试环境代理。所述测试环境代理接收到所述目标测试环境服务的响应结果后,将所述响应结果发送至所述本地代理,以便所述本地代理将所述响应结果发送至所述本地服务。例如:图1中,当所述目标测试环境响应所述登录请求后,将登录响应结果通过所述测试环境代理和所述本地代理发送至所述本地服务,以便进入下一页面。
在一示例性的实施例中,所述本地服务的自测系统还将所述响应结果上传至区块链中。所述区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
本发明实施例提供的本地服务的自测系统,通过在本地新增本地注册中心以及本地代理,并在测试端新增测试环境代理,通过新增本地代理实现本地服务与测试环境注册中心的解耦。通过新增本地代理和测试环境代理,实现本地服务和测试环境服务的隔离,避免在本地服务测试的过程中影响测试环境。通过新增本地注册中心,避免了本地服务注册到测试环境注册中心,进而避免了测试环境注册中心请求至本地服务,从而避免了在本地服务测试的过程中影响测试环境的测试结果,实现本地自测联调,从而提升了开发效率。
实施例二
参阅图2,示出了本发明实施例之本地服务的自测方法的步骤流程图。可以理解,本方法实施例中的流程图不用于对执行步骤的顺序进行限定。所述方法应用于本地服务的自测系统中,如实施例一中的所述本地服务的自测系统。所述本地服务的自测系统包括本地服务、本地代理、测试环境代理、测试环境服务以及测试环境注册中心。具体包括以下步骤:
步骤S100:本地服务发送调用目标服务的请求信息至本地代理,所述请求信息包括:调用的接口信息以及传递参数。
具体地,当需要调用一个目标服务时,例如:当用户需要进行页面的登录时,由于所述本地代理具有登录的服务,所述本地服务通过将登录的服务请求发送至本地代理,以通过所述本地代理实现本地服务的自测。
在示例性的实施例中,如图3所示,为本发明实施例之本地服务的自测方法的另一种示例性的步骤流程图。如图3所示,所述方法还包括如下步骤:
步骤S101:所述本地服务和所述本地代理向本地注册中心进行第一服务注册;
步骤S102:所述测试环境代理和所述测试环境服务向所述测试环境注册中心进行第二服务注册。
具体地,在所述本地服务自测之前,所述本地服务和所述本地代理均将自己的服务注册到所述本地注册中心,所述测试环境代理和所述测试环境服务也均将自己的服务注册到所述测试环境注册中心,以便所述本地服务和所述本地代理从所述本地注册中心查询需要调用服务的位置,所述测试环境代理从所述测试环境测试中心查询需要调用服务的位置。
通过所述本地注册中心,使得所述本地服务仅能将服务注册到所述本地注册中心,而不影响所述测试环境注册中心的服务注册,也即避免了所述测试环境注册中心请求至所述本地服务,从而避免了所述本地服务测试的过程中影响测试环境的测试结果。所述本地注册中心和所述测试环境注册中心可以为zookeeper。所述zookeeper是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
在示例性的实施例中,如图4所示,为本发明实施例提供的本地服务的自测方法的另一种示例性的步骤流程图。在所述本地服务发送目标服务的请求信息至本地代理之前,所述方法还包括:
步骤S201:根据服务调用需求,所述本地服务将所述本地服务依赖的所述目标服务的名称配置到所述本地代理,以使所述本地代理具有所述目标服务;
步骤S202:当所述本地代理启动后,所述本地代理将所述目标服务注册到所述本地注册中心。
具体地,若本地服务需要调用登录服务,也即所述本地服务依赖所述登录服务,由于本地代理中不具有登录服务,此时,需要将所述本地服务所依赖的登录服务的名称配置到所述本地代理,以使所述本地代理具有所述本地服务所依赖的登录服务。当所述本地代理启动后,所述本地代理将所述登录服务注册到本地注册中心,以便所述本地服务从所述本地注册中心查找到所述登录服务的位置。
上述步骤通过将所述本地服务依赖的所述目标服务的名称配置到所述本地代理,以在所述本地代理上Mock一个测试环境服务的服务接口,通过创建一个虚拟的对象实现服务的测试。Mock用于模拟一些在应用中不容易构造或比较复杂的对象,从而把测试与测试边界意外的对象隔离开。Mock对象有助于从测试中消除依赖项,使得测试更单元化。通过在本地代理中Mock一个登录服务接口,使得本地代理具有登录的服务,故,所述本地服务直接调用本地代理的登录服务。然后,所述本地代理将所述目标服务注册到所述本地注册中心,能够实现本地服务与测试环境注册中心的解耦,极大地降低了本地服务与测试环境服务之间的依赖关系,避免了本地服务在测试的过程中影响测试环境。
在示例性的实施例中,如图5所示,为本发明实施例的图2中所述步骤S100的一种示例性的步骤流程图,所述步骤S100可以具体包括如下步骤:
步骤S301:所述本地服务查询所述本地注册中心,以获得所述目标服务的调用接口所在的服务;
步骤S302:当查询结果为所述本地代理时,发送调用所述目标服务的所述请求信息至所述本地代理。
具体地,由于所述本地代理在启动时,将登录服务注册到所述本地注册中心。当所述本地服务调用登录服务时,所述本地服务通过查找所述本地注册中心,获得所述登录服务的调用接口在所述本地代理。此时,所述本地服务发送调用所述登录服务的请求信息至所述本地代理。本地服务通过查找本地注册中心,能够快速地查询到所述目标服务的调用接口所在的服务,以便所述本地服务基于dubbo直接调用所述目标服务的调用接口所在的服务。
需要说明的是,dubbo是一种开源分布式服务框架,使得应用可以通过高性能的远程过程调用(Remote Procedure Call,RPC)实现服务的输出和输入功能,可以提供面向接口的远程方法调用、智能容错和负载均衡以及服务自动注册和发现。
步骤S200:当所述本地代理接收到所述请求信息后,所述本地代理将所述请求信息发送至测试环境代理。
具体地,所述本地代理将所述请求信息通过超文本传输协议(HyperTextTransfer Protocol,HTTP)发送至所述测试环境代理。例如:所述本地代理将所述本地服务需要调用的服务接口以及需要调用的参数通过HTTP方式发送至所述测试环境代理。通过所述本地代理和所述测试环境代理,实现了所述本地服务和所述测试环境代理的隔离。
步骤S300:当所述测试环境代理接收到所述请求信息后,查找所述测试环境注册中心,以从多个测试环境服务中确定目标测试环境服务,并向所述目标测试环境服务发送调用请求。
具体地,由于在所述本地服务自测之前,所述测试环境代理和多个测试环境服务均会注册到所述测试环境注册中心,所述测试环境代理通过查找所述测试环境注册中心中注册的服务,以确定提供目标服务的目标测试环境服务。当查找到提供所述目标服务的目标测试环境服务后,所述测试环境代理向所述目标测试环境服务发送调用请求。例如:结合图1,所述测试环境服务中具有登录服务,并将所述登录服务注册到所述测试环境注册中心,所述测试环境代理通过查找所述测试环境注册中心,确定所述登录服务在所述测试环境服务,则所述测试环境代理向所述测试环境服务调用发送调用登录服务的请求。
步骤S400:所述目标测试环境服务响应于所述调用请求,并将响应结果通过所述测试环境代理和所述本地代理发送至所述本地服务。
具体地,当所述目标测试环境服务接收到所述测试环境代理的调用请求后,所述目标测试环境服务响应于所述调用请求,并将响应结果发送至所述测试环境代理。所述测试环境代理接收到所述目标测试环境服务的响应结果后,将所述响应结果发送至所述本地代理,以便所述本地代理将所述响应结果发送至所述本地服务。例如:结合图1,当所述目标测试环境响应所述登录请求后,将登录响应结果通过所述测试环境代理和所述本地代理发送至所述本地服务,以便进入下一页面。
在一示例性的实施例中,本地服务的自测方法还包括:将所述响应结果上传至区块链中。所述区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
本发明实施例提供的本地服务的自测方法,通过在本地新增本地注册中心以及本地代理,并在测试端新增测试环境代理,通过新增本地代理实现本地服务与测试环境注册中心的解耦。通过新增本地代理和测试环境代理,实现本地服务和测试环境服务的隔离,避免在本地服务测试的过程中影响测试环境。通过新增本地注册中心,避免了本地服务注册到测试环境注册中心,进而避免了测试环境注册中心请求至本地服务,从而避免了在本地服务测试的过程中影响测试环境的测试结果,实现本地自测联调,从而提升了开发效率。
实施例三
请参阅图6,示出了本发明实施例三之计算机设备的硬件架构示意图。计算机设备2包括,但不仅限于,可通过系统总线相互通信连接存储器21、处理22以及网络接口23,图6仅示出了具有组件21-23的计算机设备2,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。本实施例中,所述计算机设备2是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。
所述存储器21至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器21可以是所述计算机设备2的内部存储单元,例如该计算机设备2的硬盘或内存。在另一些实施例中,所述存储器也可以是所述计算机设备2的外部存储设备,例如该计算机设备2上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。当然,所述存储器21还可以既包括所述计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,所述存储器21通常用于存储安装于所述计算机设备2的操作系统和各类应用软件,例如本地服务的自测系统20的程序代码等。此外,所述存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器22在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器22通常用于控制所述计算机设备2的总体操作。本实施例中,所述处理器22用于运行所述存储器21中存储的程序代码或者处理数据,例如运行所述本地服务的自测系统20等。
所述网络接口23可包括无线网络接口或有线网络接口,该网络接口23通常用于在所述计算机设备2与其他电子设备之间建立通信连接。例如,所述网络接口23用于通过网络将所述计算机设备2与外部终端相连,在所述计算机设备2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,GSM)、宽带码分多址(WidebandCode Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图6仅示出了具有部件21-23的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
实施例四
本实施例还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例中的本地服务的自测方法的步骤。
本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart MediaCard,简称为SMC),安全数字(Secure Digital,简称为SD)卡,闪存卡(Flash Card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中的本地服务的自测方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种本地服务的自测方法,其特征在于,应用于本地服务自测的系统中,所述本地服务的自测系统包括本地服务、本地代理、测试环境代理、测试环境服务以及测试环境注册中心,所述方法包括:
本地服务发送调用目标服务的请求信息至本地代理,所述请求信息包括:调用的接口信息以及传递参数;
当所述本地代理接收到所述请求信息后,所述本地代理将所述请求信息发送至测试环境代理;
当所述测试环境代理接收到所述请求信息后,查找所述测试环境注册中心,以从多个测试环境服务中确定目标测试环境服务,并向所述目标测试环境服务发送调用请求;及
所述目标测试环境服务响应于所述调用请求,并将响应结果通过所述测试环境代理和所述本地代理发送至所述本地服务。
2.如权利要求1所述的本地服务的自测方法,其特征在于,所述本地服务的自测系统还包括本地注册中心,所述方法还包括:
所述本地服务和所述本地代理向所述本地注册中心进行第一服务注册;
所述测试环境代理和所述测试环境服务向所述测试环境注册中心进行第二服务注册。
3.如权利要求2所述的本地服务的自测方法,其特征在于,所述本地服务发送目标服务的请求信息至本地代理之前,所述方法还包括:
根据服务调用需求,所述本地服务将所述本地服务依赖的所述目标服务的名称配置到所述本地代理,以使所述本地代理具有所述目标服务;
当所述本地代理启动后,所述本地代理将所述目标服务注册到所述本地注册中心。
4.如权利要求2所述的本地服务的自测方法,其特征在于,所述本地服务发送调用目标服务的请求信息至本地代理,包括:
所述本地服务查询所述本地注册中心,以获得所述目标服务的调用接口所在的服务;
当查询结果为所述本地代理时,发送调用所述目标服务的所述请求信息至所述本地代理。
5.一种本地服务的自测系统,其特征在于,包括本地服务、本地代理、测试环境代理、测试环境服务以及测试环境注册中心,其中:
所述本地服务发送调用目标服务的请求信息至本地代理,所述请求信息包括:调用的接口信息以及传递参数;
当所述本地代理接收到所述请求信息后,所述本地代理将所述请求信息发送至测试环境代理;
当所述测试环境代理接收到所述请求信息后,查找所述测试环境注册中心,以从多个测试环境服务中确定目标测试环境服务,并向所述目标测试环境服务发送调用请求;及
所述目标测试环境服务响应于所述调用请求,并将响应结果通过所述测试环境代理和所述本地代理发送至所述本地服务。
6.如权利要求5所述的本地服务的自测系统,所述本地服务的自测系统还包括本地注册中心,其特征在于:
所述本地服务和所述本地代理向所述本地注册中心进行第一服务注册;
所述测试环境代理和所述测试环境服务向所述测试环境注册中心进行第二服务注册。
7.如权利要求2所述的本地服务的自测系统,其特征在于:
根据服务调用需求,所述本地服务将所述本地服务依赖的所述目标服务的名称配置到所述本地代理,以使所述本地代理具有所述目标服务;
当所述本地代理启动后,所述本地代理将所述目标服务注册到所述本地注册中心。
8.如权利要求6所述的本地服务的自测系统,其特征在于,所述本地服务具体用于:
查询所述本地注册中心,以获得所述目标服务的调用接口所在的服务;
当查询结果为所述本地代理时,发送调用所述目标服务的所述请求信息至所述本地代理。
9.一种计算机设备,其特征在于,所述计算机设备存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被处理器执行时实现如权利要求1-4中任一项所述的本地服务的自测方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如权利要求1-4中任一项所述的本地服务的自测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011511160.4A CN112527669B (zh) | 2020-12-18 | 2020-12-18 | 本地服务的自测方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011511160.4A CN112527669B (zh) | 2020-12-18 | 2020-12-18 | 本地服务的自测方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112527669A true CN112527669A (zh) | 2021-03-19 |
CN112527669B CN112527669B (zh) | 2024-03-19 |
Family
ID=75001685
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011511160.4A Active CN112527669B (zh) | 2020-12-18 | 2020-12-18 | 本地服务的自测方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112527669B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115145813A (zh) * | 2022-06-30 | 2022-10-04 | 北京达佳互联信息技术有限公司 | 模型评测方法及设备 |
CN116627851A (zh) * | 2023-07-24 | 2023-08-22 | 恒生电子股份有限公司 | 接口测试方法以及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170180238A1 (en) * | 2015-12-16 | 2017-06-22 | Software Ag | Systems and/or methods for automated testing and monitoring of backend services |
CN108427644A (zh) * | 2018-03-27 | 2018-08-21 | 深圳市买买提信息科技有限公司 | 服务测试方法、服务测试系统及服务测试装置 |
US10498625B1 (en) * | 2016-10-14 | 2019-12-03 | Amazon Technologies, Inc. | Distributed testing service |
US10649768B1 (en) * | 2018-03-12 | 2020-05-12 | Amazon Technologies, Inc. | Development code execution using a service proxy |
CN111752770A (zh) * | 2019-03-29 | 2020-10-09 | 上海哔哩哔哩科技有限公司 | 服务请求的处理方法、系统、计算机设备和存储介质 |
-
2020
- 2020-12-18 CN CN202011511160.4A patent/CN112527669B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170180238A1 (en) * | 2015-12-16 | 2017-06-22 | Software Ag | Systems and/or methods for automated testing and monitoring of backend services |
US10498625B1 (en) * | 2016-10-14 | 2019-12-03 | Amazon Technologies, Inc. | Distributed testing service |
US10649768B1 (en) * | 2018-03-12 | 2020-05-12 | Amazon Technologies, Inc. | Development code execution using a service proxy |
CN108427644A (zh) * | 2018-03-27 | 2018-08-21 | 深圳市买买提信息科技有限公司 | 服务测试方法、服务测试系统及服务测试装置 |
CN111752770A (zh) * | 2019-03-29 | 2020-10-09 | 上海哔哩哔哩科技有限公司 | 服务请求的处理方法、系统、计算机设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
金海 等: "信息服务网格资源代理的实现策略", 计算机应用与软件, no. 01, pages 56 - 57 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115145813A (zh) * | 2022-06-30 | 2022-10-04 | 北京达佳互联信息技术有限公司 | 模型评测方法及设备 |
CN116627851A (zh) * | 2023-07-24 | 2023-08-22 | 恒生电子股份有限公司 | 接口测试方法以及装置 |
CN116627851B (zh) * | 2023-07-24 | 2023-10-20 | 恒生电子股份有限公司 | 接口测试方法以及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112527669B (zh) | 2024-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109995713B (zh) | 一种微服务框架中的服务处理方法及相关设备 | |
CN109547570B (zh) | 服务注册方法、装置、注册中心管理设备及存储介质 | |
JP7389791B2 (ja) | コンフィギュレーション・シナリオ順守のためのモバイル・デバイスによるコンプライアンス設定の実装 | |
CN112965700B (zh) | 基于路由的微服务处理方法、装置、计算机设备和介质 | |
CN110580305B (zh) | 生成标识符的方法、装置、系统和介质 | |
US8856365B2 (en) | Computer-implemented method, computer system and computer readable medium | |
CN109104368B (zh) | 一种请求连接方法、装置、服务器及计算机可读存储介质 | |
CN112527669B (zh) | 本地服务的自测方法及系统 | |
CN108664343B (zh) | 一种微服务的有状态调用方法及装置 | |
CN111193803A (zh) | 基于spring cloud的微服务构建方法及spring cloud微服务架构 | |
CN113407997A (zh) | 数据脱敏方法、装置、计算机设备及存储介质 | |
CN111367685A (zh) | 接口调用的方法及装置、计算机设备、存储介质 | |
CN114328097A (zh) | 一种文件监控方法、装置、电子设备和存储介质 | |
CN118012500A (zh) | 版本兼容方法、装置、设备及计算机可读存储介质 | |
CN115390939B (zh) | 业务处理方法和系统 | |
CN111400051A (zh) | 一种资源调度方法、装置及系统 | |
CN112565340B (zh) | 分布式应用的服务调度方法、装置、计算机系统及介质 | |
CN113746918A (zh) | 超文本传输协议代理方法及系统 | |
CN113704120A (zh) | 数据传输方法、装置、设备及存储介质 | |
US9313272B2 (en) | Information processor and information processing method | |
CN112866351A (zh) | 数据交互方法、装置、服务器及存储介质 | |
US20230413016A1 (en) | Delivery of geographic location for user equipment (ue) in a wireless communication network | |
CN118283106A (zh) | 一种跨云调用服务的方法、系统、电子设备和存储介质 | |
US20180287868A1 (en) | Control method and control device | |
CN116303087A (zh) | 应用调试方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |