CN112506788A - 微服务接口自动监测方法和装置、存储介质 - Google Patents
微服务接口自动监测方法和装置、存储介质 Download PDFInfo
- Publication number
- CN112506788A CN112506788A CN202011491266.2A CN202011491266A CN112506788A CN 112506788 A CN112506788 A CN 112506788A CN 202011491266 A CN202011491266 A CN 202011491266A CN 112506788 A CN112506788 A CN 112506788A
- Authority
- CN
- China
- Prior art keywords
- interface
- micro
- service interface
- data
- 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.)
- Pending
Links
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/3668—Software testing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本公开涉及一种微服务接口自动监测方法和装置、存储介质。该微服务接口自动监测方法包括:收集录制用户对微服务接口的历史测试数据,其中,所述历史测试数据包括调用成功的数据与调用失败的数据;每间隔第一预定时间间隔自动发起接口调用测试;将接口响应结果反馈给用户终端。本公开可以实现微服务接口的自动化监控,并降低了测试成本。
Description
技术领域
本公开涉及接口监测技术领域,特别涉及一种微服务接口自动监测方法和装置、存储介质。
背景技术
随着互联网业务的深入,微服务组件开放比重越来越大,自动化测试的重心也逐渐从以前的UI(User Interface,用户界面)自动化转移到接口自动化上面。各工业互联网平台不断开放服务共享能力,企业提供微服务API(Application Programming Interface,应用程序编程接口)注册发布、调用调试、监控与管理功能全套托管服务,并借助于网关保证API测试工具易用性。随着用户量增多及微服务调用频率增大,必然引起对微服务接口持续集成和自动化测试监控的重视。
企业系统中存在大量微服务接口,为保证微服务接口正常发现及申请使用,企业对注册到网关的微服务接口应经过充分测试验证,并在上线前专人复核验证微服务接口可调用性,且每次接口迭代变更都需要再次验证。人工验证微服务接口及系统调用监测均存在时间延迟,有时候第三方接口调整甚至下线了,因使用方未收到及时通知导致线上功能无法正常使用,常规测试监测工作将耗费大量时间和人力,但效果却不理想。
发明内容
鉴于以上技术问题中的至少一项,本公开提供了一种微服务接口自动监测方法和装置、存储介质,可以实现微服务接口的自动化监控,降低了测试成本。
根据本公开的一个方面,提供一种微服务接口自动监测方法,包括:
收集录制用户对微服务接口的历史测试数据,其中,所述历史测试数据包括调用成功的数据与调用失败的数据;
每间隔第一预定时间间隔自动发起接口调用测试;
将接口响应结果反馈给用户终端。
在本公开的一些实施例中,所述收集录制用户对微服务接口的历史测试数据包括:
将微服务接口的调用记录存储在本地数据库;
以第二预定时间间隔从本地数据库同步获取数据并缓存在消息缓存中。
在本公开的一些实施例中,所述每间隔第一预定时间间隔自动发起接口调用测试包括:
设置定时任务;
以第一预定时间间隔从消息缓存获取单个接口最近一次调用成功的微服务接口请求数据;
模拟请求参数发送调用请求。
在本公开的一些实施例中,所述微服务接口自动监测方法还包括:
根据收集的数据模拟出相似数据,根据相似数据进行接口调用测试。
在本公开的一些实施例中,所述微服务接口自动监测方法还包括:
收集微服务接口的高峰期调用量;
以第三时间间隔对微服务接口进行压力测试。
在本公开的一些实施例中,所述微服务接口自动监测方法还包括:
获取指标参数,其中,所述指标参数包括接口响应时间和高峰期调用量;
根据指标参数动态调整接口调用频率和设置调用时点。
在本公开的一些实施例中,所述微服务接口自动监测方法还包括:
针对第一次接口调用测试未通过的微服务接口,收集用户数据历史多次的调用日志进行解析,选取合适的模拟数据对接口进行回放测试。
根据本公开的另一方面,提供一种微服务接口自动监测装置,包括:
测试工具,用于收集录制用户对微服务接口的历史测试数据,其中,所述历史测试数据包括调用成功的数据与调用失败的数据;
监测工具,用于每间隔第一预定时间间隔自动发起接口调用测试;将接口响应结果反馈给用户终端。
在本公开的一些实施例中,所述微服务接口自动监测装置用于执行实现如上述任一实施例所述的微服务接口自动监测方法的操作。
根据本公开的另一方面,提供一种微服务接口自动监测装置,包括:
存储器,用于存储指令;
处理器,用于执行所述指令,使得所述微服务接口自动监测装置执行实现如上述任一实施例所述的微服务接口自动监测方法的操作。
根据本公开的另一方面,提供一种非瞬时性计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例所述的微服务接口自动监测方法。
本公开可以实现微服务接口的自动化监控,并降低了测试成本。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本公开微服务接口自动监测方法一些实施例的示意图。
图2为本公开微服务接口自动监测方法另一些实施例的示意图。
图3为本公开微服务接口自动监测方法又一些实施例的示意图。
图4为本公开微服务接口自动监测装置一些实施例的示意图。
图5为本公开微服务接口自动监测装置另一些实施例的示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。
在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
图1为本公开微服务接口自动监测方法一些实施例的示意图。优选的,本实施例可由本公开微服务接口自动监测装置执行。该方法可以包括以下步骤:
步骤11,收集录制用户对微服务接口的历史测试数据,其中,所述历史测试数据包括调用成功的数据与调用失败的数据。
在本公开的一些实施例中,所述微服务接口可以为API。
在本公开的一些实施例中,步骤11可以包括步骤111和步骤112,其中:
步骤111,将微服务接口的调用记录存储在本地数据库。
步骤112,以第二预定时间间隔从本地数据库同步获取数据并缓存在消息缓存中。
步骤12,每间隔第一预定时间间隔自动发起接口调用测试。
在本公开的一些实施例中,步骤12可以包括步骤121-步骤123,其中:
步骤121,设置定时任务。
步骤122,以第一预定时间间隔从消息缓存获取单个接口最近一次调用成功的微服务接口请求数据。
步骤123,模拟请求参数发送调用请求,发起接口调用测试。
步骤13,将接口响应结果反馈给用户终端。
在本公开的一些实施例中,所述接口响应结果可以包括调用成功监测结果、调用失败监测结果和异常通知消息。
基于本公开上述实施例提供的微服务接口自动监测方法,可以通过微服务接口自动监控和异常消息通知,从而可以满足企业降本增效、及时发现问题。
本公开上述实施例降低了大量复杂接口的测试人工成本和时间延迟,保证了接口稳定可用。
图2为本公开微服务接口自动监测方法另一些实施例的示意图。优选的,本实施例可由本公开微服务接口自动监测装置执行。该方法可以包括以下步骤:
步骤21,根据用户终端的指示,API测试工具调用用户对微服务接口的历史测试数据,其中,所述历史测试数据包括调用成功的数据与调用失败的数据,微服务接口的调用记录存储在本地Mysql数据库(一种关系型数据库管理系统)。
步骤22,以第二预定时间间隔从本地数据库同步获取数据并缓存在消息缓存中。
步骤23,API自动监测工具设置定时任务,API自动监测工具以第一预定时间间隔从消息缓存Redis(Remote Dictionary Server,远程字典服务)获取单个接口最近一次调用成功的微服务接口请求数据。
步骤24,API自动监测工具每间隔第一预定时间间隔自动发起接口调用测试。
步骤25,API自动监测工具将接口响应结果反馈给用户终端。
在本公开的一些实施例中,所述接口响应结果可以包括调用成功监测结果、调用失败监测结果和异常通知消息。
基于本公开上述实施例提供的微服务接口自动监测方法,为保证调用者的成功率,可以通过在代码层设置定时任务,每天发起主动监测或根据定时任务主动触发,从而可以实现对平台或企业接口自动监测及异常提醒。
本公开上述实施例可以实现微服务接口的自动化监控,从而降低了测试成本,保证了接口监测时效性及接口稳定可用。
本公开上述实施例中,由于收集录制的是数据通常是开发人员或测试人员上线前验证接口的数据,所以模拟参数请求数据的可靠性是可以保证的,可以准确地测试业务接口,及时发现问题。
图3为本公开微服务接口自动监测方法又一些实施例的示意图。优选的,本实施例可由本公开微服务接口自动监测装置执行。除了包含图1或图2实施例的方法步骤外,图3实施例的微服务接口自动监测方法还可以包括以下步骤:
步骤31,根据收集的数据模拟出相似数据,根据相似数据进行接口调用测试。
本公开上述实施例系统进行自动化监测时,还会根据收集的数据自动模拟一些相近的数据进行测试。
步骤32,收集微服务接口的高峰期调用量;以第三时间间隔对微服务接口进行压力测试。
本公开上述实施例的在线测试工具也能收集到接口高峰期的调用量,监测工具定期对接口进行压力测试,以便及时发现问题。
步骤33,获取指标参数,其中,所述指标参数包括接口响应时间和高峰期调用量;根据指标参数动态调整接口调用频率(即可以动态调整第一预定时间间隔)和设置调用时点。
本公开上述实施例是基于真实的微服务接口进行测试验证,可能会对实际生产使用接口方造成并发压力,导致正常接口调用可能出现接口请求超时或请求无法送达等问题。因此,本公开上述实施例综合考量接口响应时间和高峰期调用量等各项指标参数,自定义动态调整接口调用频率和设置调用时点保障,可以在不影响线上业务的同时实现自动监测的功能。
步骤34,针对第一次接口调用测试未通过的微服务接口,收集用户数据历史多次(N次,N为大于1的自然数)的调用日志进行解析,选取合适的模拟数据对接口进行回放测试。
基于本公开上述实施例提供的微服务接口自动监测方法,考虑到收集的用户数据不完全是待测接口本身问题,针对第一次自动检测未通过的微服务接口,采取收集大量用户数据历史N次的调用日志进行解析的手段,综合选取合适的模拟数据对接口进行充分的回放测试。
图4为本公开微服务接口自动监测装置一些实施例的示意图。如图4所示,本公开微服务接口自动监测装置可以包括测试工具41和监测工具42,其中:
测试工具41,用于收集录制用户对微服务接口的历史测试数据,包括调用成功的数据与调用失败的数据。
在本公开的一些实施例中,所述微服务接口可以为API。
在本公开的一些实施例中,测试工具41可以用于将微服务接口的调用记录存储在本地数据库;以第二预定时间间隔从本地数据库同步获取数据并缓存在消息缓存中。
监测工具42,用于每间隔第一预定时间间隔自动发起接口调用测试;将接口响应结果反馈给用户终端。
在本公开的一些实施例中,所述接口响应结果可以包括调用成功监测结果、调用失败监测结果和异常通知消息。
在本公开的一些实施例中,监测工具42可以用于设置定时任务;以第一预定时间间隔从消息缓存获取单个接口最近一次调用成功的微服务接口请求数据;模拟请求参数发送调用请求。
基于本公开上述实施例提供的微服务接口自动监测装置,可以通过微服务接口自动监控和异常消息通知,从而可以满足企业降本增效、及时发现问题。
本公开上述实施例降低了大量复杂接口的测试人工成本和时间延迟,保证了接口稳定可用。
在本公开的一些实施例中,本公开微服务接口自动监测装置还可以用于根据收集的数据模拟出相似数据,根据相似数据进行接口调用测试。
本公开上述实施例系统进行自动化监测时,还会根据收集的数据自动模拟一些相近的数据进行测试。
在本公开的一些实施例中,本公开微服务接口自动监测装置还可以用于收集微服务接口的高峰期调用量;以第三时间间隔对微服务接口进行压力测试。
本公开上述实施例的在线测试工具也能收集到接口高峰期的调用量,监测工具定期对接口进行压力测试,以便及时发现问题。
在本公开的一些实施例中,本公开微服务接口自动监测装置还可以用于获取指标参数,其中,所述指标参数包括接口响应时间和高峰期调用量;根据指标参数动态调整接口调用频率(即可以动态调整第一预定时间间隔)和设置调用时点。
本公开上述实施例是基于真实的微服务接口进行测试验证,可能会对实际生产使用接口方造成并发压力,导致正常接口调用可能出现接口请求超时或请求无法送达等问题。因此,本公开上述实施例综合考量接口响应时间和高峰期调用量等各项指标参数,自定义动态调整接口调用频率和设置调用时点保障,可以在不影响线上业务的同时实现自动监测的功能。
本公开的一些实施例中,本公开微服务接口自动监测装置还可以用于针对第一次接口调用测试未通过的微服务接口,收集用户数据历史多次的调用日志进行解析,选取合适的模拟数据对接口进行充分的回放测试。
在本公开的一些实施例中,所述微服务接口自动监测装置可以用于执行实现如上述任一实施例(例如图1-图3任一实施例)所述的微服务接口自动监测方法的操作。
本公开上述实施例提供的微服务接口自动监测装置,考虑到收集的用户数据不完全是待测接口本身问题,针对第一次自动检测未通过的微服务接口,采取收集大量用户数据历史N次的调用日志进行解析的手段,综合选取合适的模拟数据对接口进行充分的回放测试。
图5为本公开微服务接口自动监测装置另一些实施例的示意图。如图5所示,本公开微服务接口自动监测装置可以包括存储器51和处理器52,其中:
存储器51,用于存储指令。
处理器52,用于执行所述指令,使得所述微服务接口自动监测装置执行实现如上述任一实施例(例如图1-图3任一实施例)所述的微服务接口自动监测方法的操作。
基于本公开上述实施例提供的微服务接口自动监测装置,为保证调用者的成功率,可以通过在代码层设置定时任务,每天发起主动监测或根据定时任务主动触发,从而可以实现对平台或企业接口自动监测及异常提醒。
本公开上述实施例可以实现微服务接口的自动化监控,从而降低了测试成本,保证了接口监测时效性及接口稳定可用。
本公开上述实施例中,由于收集录制的是数据通常是开发人员或测试人员上线前验证接口的数据,所以模拟参数请求数据的可靠性是可以保证的,可以准确地测试业务接口,及时发现问题。
根据本公开的另一方面,提供一种非瞬时性计算机可读存储介质,其中,所述非瞬时性计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如上述任一实施例(例如图1-图3任一实施例)所述的微服务接口自动监测方法。
基于本公开上述实施例提供的非瞬时性计算机可读存储介质,可以通过微服务接口自动监控和异常消息通知,从而可以满足企业降本增效、及时发现问题。
本公开上述实施例降低了大量复杂接口的测试人工成本和时间延迟,保证了接口稳定可用。
在上面所描述的微服务接口自动监测装置可以实现为用于执行本申请所描述功能的通用处理器、可编程逻辑控制器(PLC)、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者其任意适当组合。
至此,已经详细描述了本公开。为了避免遮蔽本公开的构思,没有描述本领域所公知的一些细节。本领域技术人员根据上面的描述,完全可以明白如何实施这里公开的技术方案。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指示相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本公开的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本公开限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本公开的原理和实际应用,并且使本领域的普通技术人员能够理解本公开从而设计适于特定用途的带有各种修改的各种实施例。
Claims (10)
1.一种微服务接口自动监测方法,其特征在于,包括:
收集录制用户对微服务接口的历史测试数据,其中,所述历史测试数据包括调用成功的数据与调用失败的数据;
每间隔第一预定时间间隔自动发起接口调用测试;
将接口响应结果反馈给用户终端。
2.根据权利要求1所述的微服务接口自动监测方法,其特征在于,所述收集录制用户对微服务接口的历史测试数据包括:
将微服务接口的调用记录存储在本地数据库;
以第二预定时间间隔从本地数据库同步获取数据并缓存在消息缓存中。
3.根据权利要求1或2所述的微服务接口自动监测方法,其特征在于,所述每间隔第一预定时间间隔自动发起接口调用测试包括:
设置定时任务;
以第一预定时间间隔从消息缓存获取单个接口最近一次调用成功的微服务接口请求数据;
模拟请求参数发送调用请求。
4.根据权利要求1或2所述的微服务接口自动监测方法,其特征在于,还包括:
根据收集的数据模拟出相似数据,根据相似数据进行接口调用测试。
5.根据权利要求1或2所述的微服务接口自动监测方法,其特征在于,还包括:
收集微服务接口的高峰期调用量;
以第三时间间隔对微服务接口进行压力测试。
6.根据权利要求1或2所述的微服务接口自动监测方法,其特征在于,还包括:
获取指标参数,其中,所述指标参数包括接口响应时间和高峰期调用量;
根据指标参数动态调整接口调用频率和设置调用时点。
7.根据权利要求1或2所述的微服务接口自动监测方法,其特征在于,还包括:
针对第一次接口调用测试未通过的微服务接口,收集用户数据历史多次的调用日志进行解析,选取合适的模拟数据对接口进行回放测试。
8.一种微服务接口自动监测装置,其特征在于,包括:
测试工具,用于收集录制用户对微服务接口的历史测试数据,其中,所述历史测试数据包括调用成功的数据与调用失败的数据;
监测工具,用于每间隔第一预定时间间隔自动发起接口调用测试;将接口响应结果反馈给用户终端;
其中,所述微服务接口自动监测装置用于执行实现如权利要求1-7中任一项所述的微服务接口自动监测方法的操作。
9.一种微服务接口自动监测装置,其特征在于,包括:
存储器,用于存储指令;
处理器,用于执行所述指令,使得所述微服务接口自动监测装置执行实现如权利要求1-7中任一项所述的微服务接口自动监测方法的操作。
10.一种非瞬时性计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如权利要求1-7中任一项所述的微服务接口自动监测方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011491266.2A CN112506788A (zh) | 2020-12-16 | 2020-12-16 | 微服务接口自动监测方法和装置、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011491266.2A CN112506788A (zh) | 2020-12-16 | 2020-12-16 | 微服务接口自动监测方法和装置、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112506788A true CN112506788A (zh) | 2021-03-16 |
Family
ID=74972972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011491266.2A Pending CN112506788A (zh) | 2020-12-16 | 2020-12-16 | 微服务接口自动监测方法和装置、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112506788A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115292200A (zh) * | 2022-09-28 | 2022-11-04 | 北京六方云信息技术有限公司 | 接口测试方法、装置、设备与介质 |
-
2020
- 2020-12-16 CN CN202011491266.2A patent/CN112506788A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115292200A (zh) * | 2022-09-28 | 2022-11-04 | 北京六方云信息技术有限公司 | 接口测试方法、装置、设备与介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11360881B2 (en) | Customizing computer performance tests | |
CN108509344B (zh) | 日切跑批测试方法、设备及可读存储介质 | |
CN109324975B (zh) | 一种基于移动云测平台的持续集成方法 | |
CN107294808A (zh) | 接口测试的方法、装置和系统 | |
CN108536571A (zh) | 性能测试方法、装置、设备及计算机可读存储介质 | |
CN108376115B (zh) | 一种跨Android平台自动化测试方法及系统 | |
CN113238930B (zh) | 软件系统的测试方法、装置、终端设备和存储介质 | |
CN107302476A (zh) | 一种测试异步交互系统的自动化测试方法与系统 | |
WO2011082312A1 (en) | Testing and evaluating the recoverability of a process | |
CN113227978A (zh) | 计算机处理管线中的自动异常检测 | |
CN112882927A (zh) | 一种接口自动化测试方法、装置、设备及介质 | |
CN112506788A (zh) | 微服务接口自动监测方法和装置、存储介质 | |
WO2021003924A1 (zh) | 定时测试任务控制方法、装置、计算机设备及存储介质 | |
CN111464384A (zh) | 一种异步消息的一致性测试方法及装置 | |
CN110232020A (zh) | 基于智能决策的测试结果分析方法及相关装置 | |
CN114626683A (zh) | Rpa结合ai的产品更新消息通知方法、装置及电子设备 | |
EP3734460A1 (en) | Probabilistic software testing via dynamic graphs | |
CN109388420A (zh) | 应用升级测试方法、装置、计算机设备及存储介质 | |
CN111338959B (zh) | 一种数据处理方法及相关设备 | |
CN111240981A (zh) | 一种接口测试方法、系统及平台 | |
WO2019062087A1 (zh) | 考勤数据测试方法、终端、设备以及计算机可读存储介质 | |
CN112596750B (zh) | 应用测试方法、装置、电子设备及计算机可读存储介质 | |
CN115017027A (zh) | 接口自动化持续集成测试方法、装置、设备及存储介质 | |
CN112214407A (zh) | 数据校验控制、执行方法及其相应的装置、设备、介质 | |
CN102708046A (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 |