CN116974932A - 接口测试方法、装置、电子设备及计算机存储介质 - Google Patents
接口测试方法、装置、电子设备及计算机存储介质 Download PDFInfo
- Publication number
- CN116974932A CN116974932A CN202310961662.4A CN202310961662A CN116974932A CN 116974932 A CN116974932 A CN 116974932A CN 202310961662 A CN202310961662 A CN 202310961662A CN 116974932 A CN116974932 A CN 116974932A
- Authority
- CN
- China
- Prior art keywords
- interface test
- test result
- original version
- service
- initial
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 359
- 238000001914 filtration Methods 0.000 claims abstract description 32
- 238000000034 method Methods 0.000 claims abstract description 31
- 230000002159 abnormal effect Effects 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 14
- 230000005856 abnormality Effects 0.000 claims description 6
- 238000011161 development Methods 0.000 abstract description 14
- 238000010998 test method Methods 0.000 abstract description 7
- 230000008569 process Effects 0.000 description 12
- 238000012795 verification Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013101 initial test Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- 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
- G06F11/3672—Test management
- G06F11/368—Test management for test version control, e.g. updating test cases to a new software version
-
- 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
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
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
技术领域
本申请涉及测试技术领域,具体而言,本申请涉及一种接口测试方法、装置、电子设备及计算机存储介质。
背景技术
近年来,随着计算机技术的日益发展以及不同领域的业务种类的日益丰富,软件使用的接口数量急剧增加,而且,随着业务的多样化,物联网、云原生、虚拟桌面等都出现了不同业务逻辑的接口使用方式,软件对接口的质量要求也在不断增加,包括接口的健壮性、安全性、异常场景可修复性、兜底保障等,测试人员对于接口的测试用例的需求也在不断增加。
传统的接口测试过程中,在对目标程序中的目标接口进行测试的过程中,通常是由测试人员对目标接口编写测试代码以及测试用例,然后,基于编写的测试代码以及测试用例对对应的目标接口进行接口测试,然而,在测试过程中对于不同接口,需要重新编写测试代码以及测试用例,测试的开发成本较高,降低了接口测试的工作效率。
发明内容
本申请实施例旨在解决现有接口测试中开发成本高,接口测试工作效率较低的问题。所述技术方案如下:
第一方面,本申请提供了一种接口测试方法,包括:
响应于接口测试请求,分别对新增服务、原始版本服务和原始版本服务副本进行测试,获取分别对应的初始接口测试结果;
将所述新增服务的初始接口测试结果和所述原始版本服务的初始接口测试结果进行对比,得到对比结果;
将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据;
通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果。
在第一方面的可选实施例中,所述将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据,包括:
确定所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果之间的差异数据,得到异常数据;
根据预设的噪声信息从所述异常数据中确定噪声数据。
在第一方面的可选实施例中,所述原始版本服务副本的数量为至少一个;
所述将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据,包括:
将所述至少一个原始版本服务副本分别对应的初始接口测试结果与所述原始版本服务对应的初始接口测试结果进行对比,确定至少一个初始噪声数据;
接收用户针对所述初始噪声数据的选择指令,从所述至少一个初始噪声数据中确定出噪声数据。
在第一方面的可选实施例中,所述响应于接口测试请求,分别对新增服务、原始版本服务和原始版本服务副本进行测试,获取分别对应的初始接口测试结果之前,还包括:
接收部署请求,部署新增服务;
根据预设的测试工具生成所述接口测试请求。
在第一方面的可选实施例中,所述方法还包括:
根据所述目标接口测试结果生成接口测试结果页面并显示;所述接口测试结果页面用于在所述目标接口测试结果异常时,进行异常定位。
在第一方面的可选实施例中,所述方法还包括:
获取针对所述新增服务的第一接口测试结果;所述第一接口测试结果用于表征所述新增服务是否符合预设规则信息;
所述通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果,包括:
通过所述噪声数据对所述对比结果进行过滤,确定第二接口测试结果;
将所述第一接口测试结果与所述第二接口测试结果合并,获取所述目标接口测试结果。
在第一方面的可选实施例中,所述方法还包括:
获取至少一个历史接口测试结果;
所述通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果,包括:
基于所述噪声数据对所述对比结果进行过滤,得到第二接口测试结果;
将所述第二接口测试结果与所述历史接口测试结果进行对比,确定所述目标接口测试结果。
第二方面,提供了一种接口测试装置,该装置包括:
获取模块,用于响应于接口测试请求,分别对新增服务、原始版本服务和原始版本服务副本进行测试,获取分别对应的初始接口测试结果;
第一对比模块,用于将所述新增服务的初始接口测试结果和所述原始版本服务的初始接口测试结果进行对比,得到对比结果;
第二对比模块,用于将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据;
过滤模块,用于通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果。
第三方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现本申请第一方面中任一项所述方法的步骤。
第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现本申请第一方面中任一项所示的接口测试方法。
本申请实施例提供的技术方案带来的有益效果是:
本申请提供的接口测试方法,通过对新增服务、原始版本服务和原始版本服务副本进行接口测试,获取原始接口测试结果之后,在对新增服务与原始版本服务的测试结果进行对比,并根据原始版本服务与原始版本服务副本进行对比获取的噪声数据,对对比结果进行过滤获取目标接口测试结果,通过对比测试的方式,不必对新增服务中的每一个数值都设置对应的测试方式,减少了开发成本,提高了开发效率,也提高了接口测试结果校验的覆盖率。
进一步的,在获取目标接口测试结果之后,根据目标接口测试结果生成对应的接口测试结果页面并显示,将测试结果可视化展示,在测试结果异常时,通过页面快速进行结果审查和异常定位,清晰直观地显示测试结果,能够快速定位问题,有效提高了测试效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
图1为本申请实施例提供的一种接口测试方法的应用场景示意图;
图2为本申请实施例提供的一种接口测试方法的流程示意图;
图3为本申请实施例提供的一种接口测试方法的示例的流程示意图;
图4为本申请实施例提供的一种接口测试装置的结构示意图;
图5为本申请实施例提供的一种接口测试方法适用的电子设备的结构示意图。
具体实施方式
下面结合本申请中的附图描述本申请的实施例。应理解,下面结合附图所阐述的实施方式,是用于解释本申请实施例的技术方案的示例性描述,对本申请实施例的技术方案不构成限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请实施例所使用的术语“包括”以及“包含”是指相应特征可以实现为所呈现的特征、信息、数据、步骤、操作和组件,但不排除实现为本技术领域所支持其他特征、信息、数据、步骤、操作、组件和/或它们的组合等。应该理解,当我们称一个元件被“连接”或“耦接”到另一元件时,该一个元件可以直接连接或耦接到另一元件,也可以指该一个元件和另一元件通过中间元件建立连接关系。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的术语“和/或”指示该术语所限定的项目中的至少一个,例如“A和/或B”可以实现为“A”,或者实现为“B”,或者实现为“A和B”。
为了更好的说明和理解本申请实施例提供的方案,首先对本申请实施例中所涉及的一些相关的技术用语进行介绍:
接口测试:是指对系统中各个模块之间的接口进行测试的过程。在软件开发中,一个系统一般由多个模块组成,而这些模块之间通过接口进行通信和交互。在新项目上线前进行接口测试是非常重要的一步。接口测试可以帮助发现和解决模块之间的通信问题、数据传输错误以及功能调用异常等潜在的风险和缺陷。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
现有技术中,在对目标程序中的目标接口进行测试的过程中,通常是由测试人员对目标接口编写测试代码以及测试用例,然后,基于编写的测试代码以及测试用例对对应的目标接口进行接口测试,然而,在测试过程中对于不同接口,需要重新编写测试代码以及测试用例,测试的开发成本较高,降低了接口测试的工作效率。
针对相关技术中所存在的至少一个技术问题或需要改善的地方,本申请提出一种接口测试方法、装置、电子设备及计算机存储介质,该方案提供的接口测试方法,通过对新增服务、原始版本服务和原始版本服务副本进行接口测试,获取原始接口测试结果之后,在对新增服务与原始版本服务的测试结果进行对比,并根据原始版本服务与原始版本服务副本进行对比获取的噪声数据,对对比结果进行过滤获取目标接口测试结果,通过对比测试的方式,不必对新增服务中的每一个数值都设置对应的测试方式,减少了开发成本,提高了开发效率,也提高了接口测试结果校验的覆盖率。
进一步的,在获取目标接口测试结果之后,根据目标接口测试结果生成对应的接口测试结果页面并显示,将测试结果可视化展示,在测试结果异常时,通过页面快速进行结果审查和异常定位,清晰直观地显示测试结果,能够快速定位问题,有效提高了测试效率。
下面通过对几个示例性实施方式的描述,对本申请实施例的技术方案以及本申请的技术方案产生的技术效果进行说明。需要指出的是,下述实施方式之间可以相互参考、借鉴或结合,对于不同实施方式中相同的术语、相似的特征以及相似的实施步骤等,不再重复描述。
图1为本申请实施例提供的接口测试方法的应用场景示意图,其中,应用环境可以包括一个终端101,在终端101上安装可以使用上述接口测试方法的应用程序。
具体的,在终端101中,当应用程序中有新增的服务需要上线时,生成接口测试请求,响应于接口测试请求,分别对新增服务、原始版本服务和原始版本服务副本进行测试,获取分别对应的初始接口测试结果;将新增服务的初始接口测试结果和原始版本服务的初始接口测试结果进行对比,得到对比结果;将原始版本服务的初始接口测试结果和原始版本服务副本的初始接口测试结果进行对比,确定噪声数据;通过噪声数据对对比结果进行过滤,获取目标接口测试结果。
上述应用场景中,有接口测试需求的应用程序可以是在终端上,也可以是在服务器上,具体可以基于实际应用场景需求确定。上述的应用场景只是一个示例,并不对本申请接口测试方法的应用场景进行限制。
本技术领域技术人员可以理解,终端可以是智能手机(如Android手机、iOS手机等)、平板电脑、笔记本电脑、数字广播接收器、MID(Mobile Internet Devices,移动互联网设备)、PDA(个人数字助理)、台式计算机、智能家电、车载终端(例如车载导航终端、车载电脑等)、智能音箱、智能手表等,终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,但并不局限于此。
服务器可以包括安装有能够处理数据库操作的服务器。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器或服务器集群。本发明实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。具体也可基于实际应用场景需求确定,在此不作限定。
在一些可能的实施方式中,以执行主体为安装有可以使用接口测试方法的终端为例,本申请实施例提供了一种接口测试方法,如图2所示,可以包括如下步骤:
S201,响应于接口测试请求,分别对新增服务、原始版本服务和原始版本服务副本进行测试,获取分别对应的初始接口测试结果。
其中,接口测试请求可以包括请求方法、请求头、请求参数、接口地址和接口版本。初始测试结果可以包括响应状态码、响应头、响应体等信息。
其中,原始版本服务可以是没有添加新增服务的稳定版本服务,原始版本服务副本可以为至少一个。
具体的,在接收到接口测试请求后,将请求发送到不同版本的服务上,各个服务根据接口测试请求中的请求方法确定请求的方式,根据请求头确定认证凭据、内容类型和授权信息等附加信息,根据接口地址定位到需要进行接口测试的目标接口,并确定接口版本,根据请求参数进行接口的测试,生成各自对应的初始接口测试结果,一个服务对应一个初始测试结果。
S202,将所述新增服务的初始接口测试结果和所述原始版本服务的初始接口测试结果进行对比,得到对比结果。
其中,所述对比结果可以包括接口的一致性、接口的正确性、差异信息、接口的性能以及稳定性。
具体的,将新增服务的初始接口测试结果和原始版本服务的初始接口测试结果进行对比,获取对比结果,对比的过程可以包括:选择对比的维度和方式,可以对比响应结果或者对比指定的字段或者属性,若是对比响应的结果,则将两个初始接口测试结果的响应状态码、响应头和响应体进行对比,若是对比指定的字段或者属性,则从初始接口测试结果中提取需要对比的字段或者属性,将其逐一比较;记录对比过程中出现的差异和异常,例如不一致的响应状态码、不匹配的响应头、数据缺失或者数据不一致。
S203,将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据。
具体的,将原始版本服务的初始接口测试结果和原始版本服务副本的初始接口测试结果进行对比,获取对比结果之后,对对比结果中记录到的差异信息进行分析,根据差异分析的结果,确定噪声数据,其中,噪声数据可以为接口变更或其他原因导致的不同的数据。例如,原始版本服务与原始版本服务副本进行对比,发现时间戳的数值不同,但是时间戳就是实时变动的值,时间戳数据可以是噪声数据。
在具体实施过程中,噪声数据可以根据预设的噪声信息进行确定,在确定初始接口测试结果中的噪声数据之后,开发者可以根据噪声数据的特征和影响关系,确定出处理方案,对接口进行修复、调整配置参数或者解决数据中的问题。
S204,通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果。
具体的,在确定噪声数据之后,可以根据噪声数据的特点和影响程度,确定相应的过滤规则,过滤规则可以基于噪声数据的属性、值、结构等进行选择,也可以根据用户输入的过滤规则确定;根据确定的过滤规则,在对比结果中筛选出包含噪声数据的部分,针对筛选出的噪声数据,根据规则进行处理,例如删除、忽略或替换等操作;在过滤之后,可以对剩余的对比结果进行再次验证,确定噪声数据被正确的过滤掉了,不会对测试结果产生影响;再次验证之后,可以分析过滤后的对比结果的准确性,确保过滤操作没有影响到除噪声数据之外的数据的正确性,之后确定目标接口测试结果。
在一些可能的实施方式中,上述S203中将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据,包括:
(1)确定所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果之间的差异数据,得到异常数据;
(2)根据预设的噪声信息从所述异常数据中确定噪声数据。
具体的,通过对比不同版本的接口测试结果,寻找其中存在差异的部分和差异数据,对于检测到的差异数据,分析差异原因,确定异常数据,根据差异分析的结果,从异常数据中确定噪声数据。其中,差异可以包括响应状态码不一致、响应体结构变化、数据内容不同等情况,差异可以是由于接口实现的更改、参数配置的变化、数据源的更新等引起的。噪声数据可以是因为接口实现变更或其他原因导致不一致的数据。
在一些可能的实施方式中,上述步骤S201中原始版本服务副本的数量为至少一个;
所述将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据,包括:
(1)将所述至少一个原始版本服务副本分别对应的初始接口测试结果与所述原始版本服务对应的初始接口测试结果进行对比,确定至少一个初始噪声数据;
(2)接收用户针对所述初始噪声数据的选择指令,从所述至少一个初始噪声数据中确定出噪声数据。
其中,初始噪声数据可以包括所有的差异数据。
具体的,在进行对比获取至少一个初始噪声数据之后,可以接收用户针对初始噪声数据的选择指令,从初始噪声数据中确定出所需的噪声数据,初始噪声数据中会包含多个差异数据,需要从多个差异数据中确定与接口异常有关的数据成为需要的噪声数据;在差异数据中除了噪声数据其余的数据可以为与接口异常无关的数据,也可以为对接口测试结果无影响的数据,也可以为原本就是不断变化的数据。
在一些可能的实施方式中,上述S201之前,还包括:
(1)接收部署请求,部署新增服务;
(2)根据预设的测试工具生成所述接口测试请求。
其中,上述部署请求可以包括新增服务名称、新增服务的版本号、新增服务的上线时间、配置文件、特殊需求以及备份策略。
其中,测试工具可以包括Diffy工具(差异分析工具),该工具可以用于检测和识别在新增代码后引起的服务间的差异。
在具体实施过程中,部署新增服务的步骤可以为:配置新增服务部署所需要的环境,将新增服务的代码和相关资源打包成可执行的部署包,该部署包中可以包括必要的依赖和配置文件,根据需求申请所需的资源,将部署包上传至配置完成的环境中,运行启动命令启动新增服务,对启动之后的新增服务进行正常运行的检查。
具体的,在启动新增服务之后,需要进行针对新增服务的接口测试,启动需要的测试工具,生成接口测试请求,以便进行接口测试,检查新增服务在运行中的功能和性能是否符合预期。
在一些可能的实施方式中,上述方法还包括:
(1)根据所述目标接口测试结果生成接口测试结果页面并显示;所述接口测试结果页面用于在所述目标接口测试结果异常时,进行异常定位。
在具体实施过程中,根据目标接口测试结果生成接口测试结果页面的步骤可以包括:分析目标接口测试结果,确定页面需要展示的内容,选择生成页面的方法,根据目标接口测试结果中的数据生成接口测试结果页面,在生成接口测试结果页面之后可以对该页面进行测试和调试,生成后的接口测试结果页面显示出来供用户查看和使用。
在具体实施过程中,在新增服务上线时,可以进行上述的接口测试步骤,直接生成可视化页面,用户能够直观的看到影响接口测试结果的因素,也可以快速进行异常的定位,这样不仅可以提高测试效率,还可以帮助用户更快的发现并解决问题,确保产品的质量和稳定性。
在一些可能的实施方式中,上述方法还包括:
(1)获取针对所述新增服务的第一接口测试结果;所述第一接口测试结果用于表征所述新增服务是否符合预设规则信息;
所述通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果,包括:
(2)通过所述噪声数据对所述对比结果进行过滤,确定第二接口测试结果;
(3)将所述第一接口测试结果与所述第二接口测试结果合并,获取所述目标接口测试结果。
其中,上述第一接口测试结果可以包括功能验证结果、页面设计结果、数据库交互结果、错误处理结果、兼容性测试结果和安全性测试结果等等。
具体的,通过对比并根据噪声数据对对比结果进行过滤,确定第二接口测试结果,通过预设规则信息获取第一接口测试结果,将第一接口测试结果和第二接口测试结果合并,获取目标接口测试结果。将第一接口测试结果和第二接口测试结果结合起来,也是将预设规则信息检查与对比测试结合起来,可以解决新增服务上线时开发成本高的问题,也可以增加接口测试的覆盖率。
在一些可能的实施方式中,上述方法还包括:
(1)获取至少一个历史接口测试结果;
所述通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果,包括:
(2)基于所述噪声数据对所述对比结果进行过滤,得到第二接口测试结果;
(3)将所述第二接口测试结果与所述历史接口测试结果进行对比,确定所述目标接口测试结果。
其中,历史接口测试结果可以包括历史的接口测试报告和错误日志。
具体的,历史接口测试结果的数量可以为至少一个,在确定历史接口测试结果不存在问题时,在获取本次测试的第二接口测试结果后,将各个历史接口测试结果分别与第二接口测试结果进行对比,获取目标接口测试结果,根据对比后的情况可以快速捕获执行中的问题并及时修正
上述实施例中,通过对新增服务、原始版本服务和原始版本服务副本进行接口测试,获取原始接口测试结果之后,在对新增服务与原始版本服务的测试结果进行对比,并根据原始版本服务与原始版本服务副本进行对比获取的噪声数据,对对比结果进行过滤获取目标接口测试结果,通过对比测试的方式,不必对新增服务中的每一个数值都设置对应的测试方式,减少了开发成本,提高了开发效率,也提高了接口测试结果校验的覆盖率。
进一步的,在获取目标接口测试结果之后,根据目标接口测试结果生成对应的接口测试结果页面并显示,将测试结果可视化展示,在测试结果异常时,通过页面快速进行结果审查和异常定位,清晰直观地显示测试结果,能够快速定位问题,有效提高了测试效率。
为更清楚地理解本申请实施例描述的接口测试方法,以下将结合示例进行进一步详细阐述。
在一个示例中,本申请的接口测试方法,如图3所示,可以包括:
当新增服务上线,接收新增服务的部署请求,部署该新增服务(即图中所示的使用上线代码部署服务),根据预设的测试工具(即图中所示的差异分析工具)生成接口测试请求。响应于接口测试请求,分别对新增服务(即图中所示的上线服务)、原始版本服务(即图中所示的稳定服务)和原始版本服务副本(即图中所示的稳定服务副本)进行测试,获取分别对应的初始接口测试结果。将新增服务的初始接口测试结果和原始版本服务的初始接口测试结果进行对比,得到对比结果(即图中所示的原始结果);将原始版本服务的初始接口测试结果和原始版本服务副本的初始接口测试结果进行对比,确定噪声数据;通过噪声数据对对比结果进行过滤,获取目标接口测试结果。
获取目标接口测试结果后,根据该目标接口测试结果生成接口测试结果页面并显示(即图中所示的输出结果并展示);接口测试结果页面用于在目标接口测试结果异常时,进行异常定位。
可选的,在根据噪声数据对对比结果进行过滤之后,可以获取至少一个历史接口测试结果,将过滤后的接口测试结果与历史接口测试结果进行对比,确定目标接口测试结果。
上述接口测试方法,通过对新增服务、原始版本服务和原始版本服务副本进行接口测试,获取原始接口测试结果之后,在对新增服务与原始版本服务的测试结果进行对比,并根据原始版本服务与原始版本服务副本进行对比获取的噪声数据,对对比结果进行过滤获取目标接口测试结果,通过对比测试的方式,不必对新增服务中的每一个数值都设置对应的测试方式,减少了开发成本,提高了开发效率,也提高了接口测试结果校验的覆盖率。
进一步的,在获取目标接口测试结果之后,根据目标接口测试结果生成对应的接口测试结果页面并显示,将测试结果可视化展示,在测试结果异常时,通过页面快速进行结果审查和异常定位,清晰直观地显示测试结果,能够快速定位问题,有效提高了测试效率。
本申请实施例提供了一种接口测试装置,如图4所示,该装置40可以包括:获取模块401、第一对比模块402、第二对比模块403以及过滤模块404,其中,
获取模块401,用于响应于接口测试请求,分别对新增服务、原始版本服务和原始版本服务副本进行测试,获取分别对应的初始接口测试结果;
第一对比模块402,用于将所述新增服务的初始接口测试结果和所述原始版本服务的初始接口测试结果进行对比,得到对比结果;
第二对比模块403,用于将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据;
过滤模块404,用于通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果。
本申请提供的接口测试装置中,通过对新增服务、原始版本服务和原始版本服务副本进行接口测试,获取原始接口测试结果之后,在对新增服务与原始版本服务的测试结果进行对比,并根据原始版本服务与原始版本服务副本进行对比获取的噪声数据,对对比结果进行过滤获取目标接口测试结果,通过对比测试的方式,不必对新增服务中的每一个数值都设置对应的测试方式,减少了开发成本,提高了开发效率,也提高了接口测试结果校验的覆盖率。
进一步的,在获取目标接口测试结果之后,根据目标接口测试结果生成对应的接口测试结果页面并显示,将测试结果可视化展示,在测试结果异常时,通过页面快速进行结果审查和异常定位,清晰直观地显示测试结果,能够快速定位问题,有效提高了测试效率。
本申请实施例中提供了一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,该处理器执行上述计算机程序以实现接口测试方法的步骤,与相关技术相比可实现:使用对比测试的方法结合自动化接口测试方法对新增服务接口进行测试,解决服务上线时人力投入成本高的问题。
在一个可选实施例中提供了一种电子设备,如图5所示,图5所示的电子设备5000包括:处理器5001和存储器5003。其中,处理器5001和存储器5003相连,如通过总线5002相连。可选地,电子设备5000还可以包括收发器5004,收发器5004可以用于该电子设备与其他电子设备之间的数据交互,如数据的发送和/或数据的接收等。需要说明的是,实际应用中收发器5004不限于一个,该电子设备5000的结构并不构成对本申请实施例的限定。
处理器5001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器5001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线5002可包括一通路,在上述组件之间传送信息。总线5002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线5002可以分为地址总线、数据总线、控制总线等。为便于表示,图5中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器5003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质、其他磁存储设备、或者能够用于携带或存储计算机程序并能够由计算机读取的任何其他介质,在此不做限定。
存储器5003用于存储执行本申请实施例的计算机程序,并由处理器5001来控制执行。处理器5001用于执行存储器5003中存储的计算机程序,以实现前述方法实施例所示的步骤。
其中,电子设备包括但不限于:能应用上述接口测试方法的终端和服务器。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现前述方法实施例的步骤及相应内容。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”、“1”、“2”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除图示或文字描述以外的顺序实施。
应该理解的是,虽然本申请实施例的流程图中通过箭头指示各个操作步骤,但是这些步骤的实施顺序并不受限于箭头所指示的顺序。除非本文中有明确的说明,否则在本申请实施例的一些实施场景中,各流程图中的实施步骤可以按照需求以其他的顺序执行。此外,各流程图中的部分或全部步骤基于实际的实施场景,可以包括多个子步骤或者多个阶段。这些子步骤或者阶段中的部分或全部可以在同一时刻被执行,这些子步骤或者阶段中的每个子步骤或者阶段也可以分别在不同的时刻被执行。在执行时刻不同的场景下,这些子步骤或者阶段的执行顺序可以根据需求灵活配置,本申请实施例对此不限制。
以上所述仅是本申请部分实施场景的可选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的方案技术构思的前提下,采用基于本申请技术思想的其他类似实施手段,同样属于本申请实施例的保护范畴。
Claims (10)
1.一种接口测试方法,其特征在于,包括:
响应于接口测试请求,分别对新增服务、原始版本服务和原始版本服务副本进行测试,获取分别对应的初始接口测试结果;
将所述新增服务的初始接口测试结果和所述原始版本服务的初始接口测试结果进行对比,得到对比结果;
将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据;
通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果。
2.根据权利要求1所述的接口测试方法,其特征在于,所述将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据,包括:
确定所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果之间的差异数据,得到异常数据;
根据预设的噪声信息从所述异常数据中确定噪声数据。
3.根据权利要求1所述的接口测试方法,其特征在于,所述原始版本服务副本的数量为至少一个;
所述将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据,包括:
将所述至少一个原始版本服务副本分别对应的初始接口测试结果与所述原始版本服务对应的初始接口测试结果进行对比,确定至少一个初始噪声数据;
接收用户针对所述初始噪声数据的选择指令,从所述至少一个初始噪声数据中确定出噪声数据。
4.根据权利要求1所述的接口测试方法,其特征在于,所述响应于接口测试请求,分别对新增服务、原始版本服务和原始版本服务副本进行测试,获取分别对应的初始接口测试结果之前,还包括:
接收部署请求,部署新增服务;
根据预设的测试工具生成所述接口测试请求。
5.根据权利要求1所述的接口测试方法,其特征在于,所述方法还包括:
根据所述目标接口测试结果生成接口测试结果页面并显示;所述接口测试结果页面用于在所述目标接口测试结果异常时,进行异常定位。
6.根据权利要求1所述的接口测试方法,其特征在于,所述方法还包括:
获取针对所述新增服务的第一接口测试结果;所述第一接口测试结果用于表征所述新增服务是否符合预设规则信息;
所述通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果,包括:
通过所述噪声数据对所述对比结果进行过滤,确定第二接口测试结果;
将所述第一接口测试结果与所述第二接口测试结果合并,获取所述目标接口测试结果。
7.根据权利要求1所述的接口测试方法,其特征在于,所述方法还包括:
获取至少一个历史接口测试结果;
所述通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果,包括:
基于所述噪声数据对所述对比结果进行过滤,得到第二接口测试结果;
将所述第二接口测试结果与所述历史接口测试结果进行对比,确定所述目标接口测试结果。
8.一种接口测试装置,其特征在于,包括:
获取模块,用于响应于接口测试请求,分别对新增服务、原始版本服务和原始版本服务副本进行测试,获取分别对应的初始接口测试结果;
第一对比模块,用于将所述新增服务的初始接口测试结果和所述原始版本服务的初始接口测试结果进行对比,得到对比结果;
第二对比模块,用于将所述原始版本服务的初始接口测试结果和所述原始版本服务副本的初始接口测试结果进行对比,确定噪声数据;
过滤模块,用于通过所述噪声数据对所述对比结果进行过滤,获取目标接口测试结果。
9.一种电子设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的接口测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310961662.4A CN116974932A (zh) | 2023-08-01 | 2023-08-01 | 接口测试方法、装置、电子设备及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310961662.4A CN116974932A (zh) | 2023-08-01 | 2023-08-01 | 接口测试方法、装置、电子设备及计算机存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116974932A true CN116974932A (zh) | 2023-10-31 |
Family
ID=88484656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310961662.4A Pending CN116974932A (zh) | 2023-08-01 | 2023-08-01 | 接口测试方法、装置、电子设备及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116974932A (zh) |
-
2023
- 2023-08-01 CN CN202310961662.4A patent/CN116974932A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108427613B (zh) | 异常接口定位方法、装置、计算机设备和存储介质 | |
CN114546738B (zh) | 服务器通用测试方法、系统、终端及存储介质 | |
CN112241360A (zh) | 一种测试用例生成方法、装置、设备及存储介质 | |
CN111897724A (zh) | 一种适用于云平台的自动化测试方法及装置 | |
CN111309734B (zh) | 自动生成表数据的方法及系统 | |
CN112260885B (zh) | 一种工控协议自动测试方法、系统、装置及可读存储介质 | |
CN115080398A (zh) | 一种接口自动化测试系统及方法 | |
CN111124870A (zh) | 一种接口测试方法及装置 | |
CN111897711B (zh) | 代码中bug的定位方法、装置、电子设备及可读存储介质 | |
CN110147313B (zh) | 一种日志输出方法及装置 | |
CN114328250A (zh) | 软件系统自动自检方法、介质和装置 | |
CN117370203A (zh) | 自动化测试方法、系统、电子设备及存储介质 | |
CN113094251B (zh) | 嵌入式系统测试方法、装置、计算机设备和存储介质 | |
CN108628744B (zh) | 故障诊断方法、装置及电子设备 | |
CN116561003A (zh) | 测试数据生成方法、装置、计算机设备和存储介质 | |
CN116974932A (zh) | 接口测试方法、装置、电子设备及计算机存储介质 | |
CN111813665A (zh) | 一种基于python的大数据平台接口数据测试方法和系统 | |
CN111225075A (zh) | 物联网定向访问业务的配置方法及装置 | |
CN111597101A (zh) | Sdk接入状态检测方法、计算机设备及计算机可读存储介质 | |
US20240104085A1 (en) | Computer system and method for evaluating integrity and parsing of a file system and parsing implementation | |
CN112541182B (zh) | 内核vfs层系统修复方法、装置、设备及存储介质 | |
CN112256554B (zh) | 一种基于场景测试用例进行测试的方法及设备 | |
CN113094281B (zh) | 一种混合式App的测试方法及装置 | |
CN113722201A (zh) | 一种API一致性检测方法及PaaS平台 | |
CN117331822A (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 |