CN115269414A - 一种接口测试方法、装置、电子设备及存储介质 - Google Patents
一种接口测试方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115269414A CN115269414A CN202210906124.0A CN202210906124A CN115269414A CN 115269414 A CN115269414 A CN 115269414A CN 202210906124 A CN202210906124 A CN 202210906124A CN 115269414 A CN115269414 A CN 115269414A
- Authority
- CN
- China
- Prior art keywords
- document
- test
- expected
- field
- comparison
- 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
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- 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
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
技术领域
本发明涉及互联网应用技术领域,特别是涉及一种接口测试方法、装置、电子设备及存储介质。
背景技术
接口测试是测试系统组件间接口的一种测试,主要用于检测外部系统与系统之间或者内部系统的各个子系统之间的交互点,接口测试的目的主要是检查数据的交换、传递、控制管理过程,以及系统之间的相互逻辑依赖关系等。接口测试过程中会将测试结果生成测试文档进行接口返回,并且,针对于同一接口测试,会预先将预期返回的结果生成预期文档进行保存,在接收到接口返回的测试文档时,需要对比测试文档与预期文档中的内容,根据两个文档中内容的差别,来最终确定本次接口测试的测试结果,并基于此提供一定的解决方案。
现有技术中,常常对测试文档和预期文档进行人工对比,但随着接口测试复杂性的提升,测试文档和预期文档的复杂性也会提升,这使得人工对比效率低下,并且准确率也无法得到保证。
发明内容
本发明实施例的目的在于提供一种接口测试方法、装置、电子设备及存储介质,以实现提高接口测试的效率和准确率。具体技术方案如下:
第一方面,本发明实施例提供了一种接口测试方法,所述方法包括:
获取接口测试返回的测试文档及预设的预期文档,其中,所述测试文档包括至少一个测试字段,所述预期文档中包括至少一个预期字段;
依次获取所述测试文档中各测试字段的测试字段名,以及依次获取所述预期文档中各预期字段的预期字段名;
依次将各所述测试字段名对应的测试字段存储至第一对比文档中,并依次将各所述预期字段名对应的预期字段存储至第二对比文档中;
对比所述第一对比文档和所述第二对比文档,得到所述测试文档和所述预期文档的对比结果;
基于所述对比结果,确定所述接口测试的测试结果。
本发明的一个实施例中,所述依次获取所述测试文档中各测试字段的测试字段名,以及依次获取所述预期文档中各预期字段的预期字段名,包括:
获取所述测试文档的测试字段名列表及所述预期文档的预期字段名列表;
按照测试字段名列表依次获取所述测试文档中各测试字段的测试字段名,以及按照预期字段名列表依次获取所述预期文档中各预期字段的预期字段名。
本发明的一个实施例中,所述依次将各所述测试字段名对应的测试字段存储至第一对比文档中,并依次将各所述预期字段名对应的预期字段存储至第二对比文档中,包括:
按照各所述测试字段名在所述测试字段名列表中的顺序,利用jq语句依次提取各所述测试字段名对应的测试字段,存储至所述第一对比文档中;
按照各所述预期字段名在所述预期字段名列表中的顺序,利用jq语句依次提取各所述预期字段名对应的预期字段,存储至所述第二对比文档中。
本发明的一个实施例中,所述对比所述第一对比文档和所述第二对比文档,得到所述测试文档和所述预期文档的对比结果,包括:
在所述测试字段与所述预期字段不一致的情况下,标记不一致的所述测试字段和所述预期字段,得到所述测试文档和所述预期文档的对比结果。
本发明的一个实施例中,所述方法还包括:
在得到所述测试文档和所述预期文档的对比结果之后,删除所述第一对比文档和所述第二对比文档。
本发明的一个实施例中,
所述测试字段名列表和所述预期字段名列表均为JSON格式的数据文件。
第二方面,本发明实施例提供了一种接口测试装置,所述装置包括:
文档获取模块,用于获取接口测试返回的测试文档及预设的预期文档,其中,所述测试文档包括至少一个测试字段,所述预期文档中包括至少一个预期字段;
字段名获取模块,用于依次获取所述测试文档中各测试字段的测试字段名,以及依次获取所述预期文档中各预期字段的预期字段名;
字段存储模块,用于依次将各所述测试字段名对应的测试字段存储至第一对比文档中,并依次将各所述预期字段名对应的预期字段存储至第二对比文档中;
文档对比模块,用于对比所述第一对比文档和所述第二对比文档,得到所述测试文档和所述预期文档的对比结果;
结果确定模块,用于基于所述对比结果,确定所述接口测试的测试结果。
本发明的一个实施例中,所述字段名获取模块,具体用于:
获取所述测试文档的测试字段名列表及所述预期文档的预期字段名列表;
按照测试字段名列表依次获取所述测试文档中各测试字段的测试字段名,以及按照预期字段名列表依次获取所述预期文档中各预期字段的预期字段名。
本发明的一个实施例中,所述字段存储模块,具体用于:
按照各所述测试字段名在所述测试字段名列表中的顺序,利用jq语句依次提取各所述测试字段名对应的测试字段,存储至所述第一对比文档中;
按照各所述预期字段名在所述预期字段名列表中的顺序,利用jq语句依次提取各所述预期字段名对应的预期字段,存储至所述第二对比文档中。
本发明的一个实施例中,所述文档对比模块,具体用于:
在所述测试字段与所述预期字段不一致的情况下,标记不一致的所述测试字段和所述预期字段,得到所述测试文档和所述预期文档的对比结果。
本发明的一个实施例中,所述装置还包括:
文档删除模块,用于在得到所述测试文档和所述预期文档的对比结果之后,删除所述第一对比文档和所述第二对比文档。
第三方面,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一所述的接口测试方法步骤。
第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的接口测试方法步骤。
第五方面,本发明实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的接口测试方法。
本发明实施例有益效果:
本发明实施例提供的接口测试方法,首先获取接口测试返回的测试文档及预设的预期文档,然后依次获取测试文档中各测试字段的测试字段名,并且依次获取预期文档中各预期字段的预期字段名。再依次将各测试字段名对应的测试字段存储至第一对比文档中,并依次将各预期字段名对应的预期字段存储至第二对比文档中。然后对比第一对比文档和第二对比文档,得到测试文档和预期文档的对比结果。最后基于对比结果,确定接口测试的测试结果。以此能够通过第一对比文档和第二对比文档这两个中间文件,同时对接口返回的多个测试字段和其对应的预期字段进行对比,对测试字段和预期字段是否一致进行自动识别,从而能够快速验证接口返回的内容是否符合预期,不需要人工对比,这在提高了准确率的同时,还提高了结果对比的效率,进而提高了接口测试的整体效率。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1a为本发明实施例提供的一种接口测试方法的流程示意图;
图1b为本发明实施例提供的一种测试文档和预期文档的对比结果的示例图;
图2为本发明实施例提供的步骤S12的一种可能实现的方式;
图3为本发明实施例提供的步骤S13的一种可能实现的方式;
图4为本发明实施例提供的一种接口测试装置的结构示意图;
图5为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
由于相关技术中在对比接口测试的测试返回内容和预期内容,从而确定接口测试的测试结果的时候,效率和准确率都比较低,为了解决这个问题,本发明实施例提供了一种接口测试方法、装置、电子设备及存储介质,下面通过具体实施例对接口测试方法进行详细说明。
本发明实施例的方法应用于智能终端,可以通过智能终端实施,在实际使用过程中,该智能终端可以是服务器、电脑、手机等。
参见图1a,本发明实施例提供了第一种接口测试方法的流程示意图,包括:
步骤S11:获取接口测试返回的测试文档及预设的预期文档。
其中,所述测试文档包括至少一个测试字段,所述预期文档中包括至少一个预期字段。
上述预期文档是在接口测试前预先设定的文档,包括一个或一个以上的预期字段。预期字段则为预先设置的、针对本次接口测试的期望内容,例如,预期在接口测试过程中产生的数据。
上述测试文档为接口测试结束之后接口所返回的文档,包括一个或一个以上的测试字段。测试字段则为本次接口测试所得到的真实内容,例如,接口测试过程中产生的真实数据。当测试文档中的测试字段与预期文档中的预期字段一致时,表示本次接口测试没有检测到故障。
步骤S12:依次获取所述测试文档中各测试字段的测试字段名,以及依次获取所述预期文档中各预期字段的预期字段名。
在测试文档中包括多个测试字段的情况下,依次获取各测试字段的测试字段名,具体的,测试字段名可以为对应的测试字段的标题,表示对该测试字段的概括说明。获取各测试字段名的顺序可以根据各测试字段在测试文档中的位置而确定,也可以预先设置、根据实际的需求而确定。
在预期文档中包括多个预期字段的情况下,依次获取各预期字段的预期字段名,具体的,预期字段名可以为对应的预期字段的标题,表示对该预期字段的概括说明。获取各预期字段名的顺序可以根据各预期字段在预期文档中的位置而确定,也可以预先设置、根据实际的需求而确定。
一个例子中,预期文档中的各预期字段名与测试文档中的各测试字段名应该是互相对应的。
步骤S13:依次将各所述测试字段名对应的测试字段存储至第一对比文档中,并依次将各所述预期字段名对应的预期字段存储至第二对比文档中。
在得到各测试字段名和各预期字段名之后,则可以根据各测试字段名在测试文档中确定各自对应的测试字段,然后依次将各测试字段存储至第一对比文档中,具体的,存储各测试字段的顺序可以基于其在测试文档中的位置而确定,也可以根据实际的需求而确定,例如,需要先对某一部分的测试字段进行对比,则先存储该部分的测试字段。
根据各预期字段名在预期文档中确定各自对应的预期字段,然后依次将各预期字段存储至第二对比文档中,具体的,存储各预期字段的顺序可以基于其在预期文档中的位置而确定,也可以根据与各预期字段相对应的各测试字段在第一对比文档中的存储顺序而确定,还也可以根据实际的需求而确定,例如,需要先对某一部分的预期字段进行对比,则先存储该部分的预期字段。
一个例子中,第一对比文档和第二对比文档在分别存储各测试字段和各预期字段之前,均为新配置的空白文档。上述测试文档、预期文档、第一对比文档和第二对比文档可以均为txt(一种文本格式)的文档。
步骤S14:对比所述第一对比文档和所述第二对比文档,得到所述测试文档和所述预期文档的对比结果。
在得到第一对比文档和第二对比文档之后,对第一对比文档和第二对比文档进行对比。一个例子中,对比第一对比文档和第二对比文档,可以基于文档比较工具直接对比两个文档,例如,文档自带的比较工具、预先设置的比较软件等;也可以在依次将测试字段存储至第一对比文档、将预期字段存储至第二对比文档的过程中,边存储边对比,即存储一个字段,就对比一个字段,按照字段存储的顺序,依次对比完全部字段,从而得到测试文档和预期文档的对比结果。
一个例子中,对比第一对比文档和第二对比文档所得到的对比结果是一个结果文档,其中包括测试文档和预期文档中一致的部分以及不一致的部分。
在所述测试字段与所述预期字段不一致的情况下,标记不一致的所述测试字段和所述预期字段,得到所述测试文档和所述预期文档的对比结果。
即在对比第一对比文档和第二对比文档的过程中,当识别到存在测试字段与预期字段不一致的情况时,将不一致的测试字段及其对应的预期字段标记,对全部字段的一致性进行识别后,所得到的结果文档作为得到测试文档和预期文档的对比结果。
一个例子中,将不一致测试字段及其对应的预期字段用“|”标记。
一个例子中,所得到的测试文档和预期文档的对比结果可以如图1b所示。
步骤S15:基于所述对比结果,确定所述接口测试的测试结果。
在得到测试文档和预期文档的对比结果,则可以基于对比结果确定接口测试的测试结果,具体的,当测试文档和预期文档的对比结果表示两者完全一致的情况下,判定本次接口测试未检测到故障;当测试文档和预期文档的对比结果表示两者存在不一致的情况下,对不一致的测试字段和预期字段进行分析,进而确定本次接口测试是否检测到故障以及故障的具体内容,再根据所确定的故障情况,制定相应的解决方案。
由上可见,本发明实施例提供的接口测试方法,首先获取接口测试返回的测试文档及预设的预期文档,然后依次获取测试文档中各测试字段的测试字段名,并且依次获取预期文档中各预期字段的预期字段名。再依次将各测试字段名对应的测试字段存储至第一对比文档中,并依次将各预期字段名对应的预期字段存储至第二对比文档中。然后对比第一对比文档和第二对比文档,得到测试文档和预期文档的对比结果。最后基于对比结果,确定接口测试的测试结果。以此能够通过第一对比文档和第二对比文档这两个中间文件,同时对接口返回的多个测试字段和其对应的预期字段进行对比,对测试字段和预期字段是否一致进行自动识别,从而能够快速验证接口返回的内容是否符合预期,不需要人工对比,这在提高了准确率的同时,还提高了结果对比的效率,进而提高了接口测试的整体效率。
在一种可能实现的方式中,如图2所示,上述步骤S12依次获取所述测试文档中各测试字段的测试字段名,以及依次获取所述预期文档中各预期字段的预期字段名,包括:
步骤S21:获取所述测试文档的测试字段名列表及所述预期文档的预期字段名列表;
步骤S22:按照测试字段名列表依次获取所述测试文档中各测试字段的测试字段名,以及按照预期字段名列表依次获取所述预期文档中各预期字段的预期字段名。
在获取各测试字段名和各预期字段名时,可以直接获取测试字段名列表和预期字段名列表,测试字段名列表为按照预设的排序方式对各测试字段名进行排列得到的字段名列表,预期字段名列表为按照预设的排序方式对各预期字段名进行排列得到的字段名列表。具体的,测试字段名列表和预期字段名列表可以是相对应的。上述预设排序方式则为预先根据实际需求而设定的字段的对比顺序。
在获取到测试字段名列表和预期字段名列表之后,则按照测试字段名列表依次获取测试文档中各测试字段的测试字段名,按照预期字段名列表依次获取预期文档中各预期字段的预期字段名。
本发明的一个实施例中,所述测试字段名列表和预期字段名列表均为JSON(JavaScript Object Notation,一种轻量级的数据交换格式)格式的数据文件。具体的,如果测试文档中的测试字段名和预期文档中的预期字段名出现格式不一致的情况,则先将各测试字段名和各预期字段名转换为JSON格式的字符串,然后确定测试字段名列表和预期字段名列表,所确定的测试字段名列表和预期字段名列表则为JSON格式的数据文件(dat)。
由上可见,本发明实施例提供的接口测试方法,首先获取测试文档的测试字段名列表及预期文档的预期字段名列表,然后根据测试字段名列表和预期字段名列表依次获取字段名,故而使得测试字段名和预期字段名的获取以及后续的字段对比能够根据实际需求而确定,进一步提高了测试文档和预期文档对比的效率,从而提高了接口测试的效率。
在一种可能实现的方式中,如图3所示,上述步骤S13依次将各所述测试字段名对应的测试字段存储至第一对比文档中,并依次将各所述预期字段名对应的预期字段存储至第二对比文档中,包括:
步骤S31:按照各所述测试字段名在所述测试字段名列表中的顺序,利用jq语句依次提取各所述测试字段名对应的测试字段,存储至所述第一对比文档中;
步骤S32:按照各所述预期字段名在所述预期字段名列表中的顺序,利用jq语句依次提取各所述预期字段名对应的预期字段,存储至所述第二对比文档中。
Jq是一种用于处理JSON数据的工具,其可以接受标准输入,可以用于将JSON数据转换为所需的其他数据结构,并将结果输出到标准输出中。利用jq语句提取测试字段以及预期字段,所需的运行时间更短,所提取的字段也更准确。
由上可见,本发明实施例提供的接口测试方法,各测试字段存储在第一对比文档中的顺序根据各测试字段名在测试字段名列表中的顺序而确定,各预期字段存储在第一对比文档中的顺序根据各预期字段名在预期字段名列表中的顺序而确定,利用jq语句按照顺序提取字段,在确保字段提取的准确性的同时,使得对比文档中的字段排序根据实际需求而确定,进一步提高了文档对比的准确性,从而提高了接口测试的准确性。
本发明的一个实施例中,在得到所述测试文档和所述预期文档的对比结果之后,删除所述第一对比文档和所述第二对比文档。
上述第一对比文件和第二对比文档均为临时文件,在基于此确定测试文档和预期文档的对比结果之后,则删除两个临时文件,释放对比文档时所占用的内存。
由上可见,本发明实施例提供的接口测试方法,在得到测试文档和预期文档的对比结果之后,删除第一对比文档和所述第二对比文档,释放对比文档时占用的内存,故而有效地节省了内存资源。
参见图4,本发明实施例还提供了一种接口测试装置的结构示意图,包括:
文档获取模块401,用于获取接口测试返回的测试文档及预设的预期文档,其中,所述测试文档包括至少一个测试字段,所述预期文档中包括至少一个预期字段;
字段名获取模块402,用于依次获取所述测试文档中各测试字段的测试字段名,以及依次获取所述预期文档中各预期字段的预期字段名;
字段存储模块403,用于依次将各所述测试字段名对应的测试字段存储至第一对比文档中,并依次将各所述预期字段名对应的预期字段存储至第二对比文档中;
文档对比模块404,用于对比所述第一对比文档和所述第二对比文档,得到所述测试文档和所述预期文档的对比结果;
结果确定模块405,用于基于所述对比结果,确定所述接口测试的测试结果。
由上可见,本发明实施例提供的接口测试装置,首先获取接口测试返回的测试文档及预设的预期文档,然后依次获取测试文档中各测试字段的测试字段名,并且依次获取预期文档中各预期字段的预期字段名。再依次将各测试字段名对应的测试字段存储至第一对比文档中,并依次将各预期字段名对应的预期字段存储至第二对比文档中。然后对比第一对比文档和第二对比文档,得到测试文档和预期文档的对比结果。最后基于对比结果,确定接口测试的测试结果。以此能够通过第一对比文档和第二对比文档这两个中间文件,同时对接口返回的多个测试字段和其对应的预期字段进行对比,对测试字段和预期字段是否一致进行自动识别,从而能够快速验证接口返回的内容是否符合预期,不需要人工对比,这在提高了准确率的同时,还提高了结果对比的效率,进而提高了接口测试的整体效率。
本发明的一个实施例中,所述字段名获取模块402,具体用于:
获取所述测试文档的测试字段名列表及所述预期文档的预期字段名列表;
按照测试字段名列表依次获取所述测试文档中各测试字段的测试字段名,以及按照预期字段名列表依次获取所述预期文档中各预期字段的预期字段名。
由上可见,本发明实施例提供的接口测试装置,首先获取测试文档的测试字段名列表及预期文档的预期字段名列表,然后根据测试字段名列表和预期字段名列表依次获取字段名,故而使得测试字段名和预期字段名的获取以及后续的字段对比能够根据实际需求而确定,进一步提高了测试文档和预期文档对比的效率,从而提高了接口测试的效率。
本发明的一个实施例中,所述字段存储模块403,具体用于:
按照各所述测试字段名在所述测试字段名列表中的顺序,利用jq语句依次提取各所述测试字段名对应的测试字段,存储至所述第一对比文档中;
按照各所述预期字段名在所述预期字段名列表中的顺序,利用jq语句依次提取各所述预期字段名对应的预期字段,存储至所述第二对比文档中。
由上可见,本发明实施例提供的接口测试装置,各测试字段存储在第一对比文档中的顺序根据各测试字段名在测试字段名列表中的顺序而确定,各预期字段存储在第一对比文档中的顺序根据各预期字段名在预期字段名列表中的顺序而确定,利用jq语句按照顺序提取字段,在确保字段提取的准确性的同时,使得对比文档中的字段排序根据实际需求而确定,进一步提高了文档对比的准确性,从而提高了接口测试的准确性。
本发明的一个实施例中,所述文档对比模块404,具体用于:
在所述测试字段与所述预期字段不一致的情况下,标记不一致的所述测试字段和所述预期字段,得到所述测试文档和所述预期文档的对比结果。
本发明的一个实施例中,所述装置还包括:
文档删除模块,用于在得到所述测试文档和所述预期文档的对比结果之后,删除所述第一对比文档和所述第二对比文档。
由上可见,本发明实施例提供的接口测试装置,在得到测试文档和预期文档的对比结果之后,删除第一对比文档和所述第二对比文档,释放对比文档时占用的内存,故而有效地节省了内存资源。
本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现上述任一所述的接口测试方法步骤。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一接口测试方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一接口测试方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种接口测试方法,其特征在于,所述方法包括:
获取接口测试返回的测试文档及预设的预期文档,其中,所述测试文档包括至少一个测试字段,所述预期文档中包括至少一个预期字段;
依次获取所述测试文档中各测试字段的测试字段名,以及依次获取所述预期文档中各预期字段的预期字段名;
依次将各所述测试字段名对应的测试字段存储至第一对比文档中,并依次将各所述预期字段名对应的预期字段存储至第二对比文档中;
对比所述第一对比文档和所述第二对比文档,得到所述测试文档和所述预期文档的对比结果;
基于所述对比结果,确定所述接口测试的测试结果。
2.根据权利要求1所述的方法,其特征在于,所述依次获取所述测试文档中各测试字段的测试字段名,以及依次获取所述预期文档中各预期字段的预期字段名,包括:
获取所述测试文档的测试字段名列表及所述预期文档的预期字段名列表;
按照测试字段名列表依次获取所述测试文档中各测试字段的测试字段名,以及按照预期字段名列表依次获取所述预期文档中各预期字段的预期字段名。
3.根据权利要求2所述的方法,其特征在于,所述依次将各所述测试字段名对应的测试字段存储至第一对比文档中,并依次将各所述预期字段名对应的预期字段存储至第二对比文档中,包括:
按照各所述测试字段名在所述测试字段名列表中的顺序,利用jq语句依次提取各所述测试字段名对应的测试字段,存储至所述第一对比文档中;
按照各所述预期字段名在所述预期字段名列表中的顺序,利用jq语句依次提取各所述预期字段名对应的预期字段,存储至所述第二对比文档中。
4.根据权利要求1所述的方法,其特征在于,所述对比所述第一对比文档和所述第二对比文档,得到所述测试文档和所述预期文档的对比结果,包括:
在所述测试字段与所述预期字段不一致的情况下,标记不一致的所述测试字段和所述预期字段,得到所述测试文档和所述预期文档的对比结果。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在得到所述测试文档和所述预期文档的对比结果之后,删除所述第一对比文档和所述第二对比文档。
6.根据权利要求3所述的方法,其特征在于,
所述测试字段名列表和所述预期字段名列表均为JSON格式的数据文件。
7.一种接口测试装置,其特征在于,所述装置包括:
文档获取模块,用于获取接口测试返回的测试文档及预设的预期文档,其中,所述测试文档包括至少一个测试字段,所述预期文档中包括至少一个预期字段;
字段名获取模块,用于依次获取所述测试文档中各测试字段的测试字段名,以及依次获取所述预期文档中各预期字段的预期字段名;
字段存储模块,用于依次将各所述测试字段名对应的测试字段存储至第一对比文档中,并依次将各所述预期字段名对应的预期字段存储至第二对比文档中;
文档对比模块,用于对比所述第一对比文档和所述第二对比文档,得到所述测试文档和所述预期文档的对比结果;
结果确定模块,用于基于所述对比结果,确定所述接口测试的测试结果。
8.根据权利要求7所述的装置,其特征在于,所述字段名获取模块,具体用于:
获取所述测试文档的测试字段名列表及所述预期文档的预期字段名列表;
按照测试字段名列表依次获取所述测试文档中各测试字段的测试字段名,以及按照预期字段名列表依次获取所述预期文档中各预期字段的预期字段名;
所述字段存储模块,具体用于:
按照各所述测试字段名在所述测试字段名列表中的顺序,利用jq语句依次提取各所述测试字段名对应的测试字段,存储至所述第一对比文档中;
按照各所述预期字段名在所述预期字段名列表中的顺序,利用jq语句依次提取各所述预期字段名对应的预期字段,存储至所述第二对比文档中;
所述文档对比模块,具体用于:
在所述测试字段与所述预期字段不一致的情况下,标记不一致的所述测试字段和所述预期字段,得到所述测试文档和所述预期文档的对比结果;
所述装置还包括:
文档删除模块,用于在得到所述测试文档和所述预期文档的对比结果之后,删除所述第一对比文档和所述第二对比文档。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210906124.0A CN115269414A (zh) | 2022-07-29 | 2022-07-29 | 一种接口测试方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210906124.0A CN115269414A (zh) | 2022-07-29 | 2022-07-29 | 一种接口测试方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115269414A true CN115269414A (zh) | 2022-11-01 |
Family
ID=83771813
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210906124.0A Pending CN115269414A (zh) | 2022-07-29 | 2022-07-29 | 一种接口测试方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115269414A (zh) |
-
2022
- 2022-07-29 CN CN202210906124.0A patent/CN115269414A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108984388B (zh) | 一种生成自动化测试用例的方法及终端设备 | |
CN110851308A (zh) | 一种测试方法、装置、电子设备及存储介质 | |
CN114116065B (zh) | 获取拓扑图数据对象的方法、装置、及电子设备 | |
CN108255620B (zh) | 一种业务逻辑处理方法、装置、业务服务器及系统 | |
CN110688305B (zh) | 测试环境同步方法、装置、介质、电子设备 | |
CN111324510B (zh) | 日志处理方法、装置及电子设备 | |
CN114281803A (zh) | 数据迁移方法、装置、设备、介质和程序产品 | |
CN116881156A (zh) | 一种自动化测试方法、装置、设备及存储介质 | |
CN115292197A (zh) | 一种软件测试方法、装置、电子设备及存储介质 | |
CN111290961A (zh) | 接口测试的管理方法、装置及终端设备 | |
CN114282288A (zh) | 轴网识别方法、装置、设备及存储介质 | |
CN111767213B (zh) | 数据库检查点的测试方法、装置、电子设备及存储介质 | |
CN109446462B (zh) | 基于页面的数据监控处理方法、装置、设备和存储介质 | |
CN111124545A (zh) | 应用程序启动方法、装置、电子设备及存储介质 | |
CN111045983A (zh) | 核电站电子文件管理方法、装置、终端设备及介质 | |
CN108038233B (zh) | 一种采集文章的方法、装置、电子设备及存储介质 | |
CN115269414A (zh) | 一种接口测试方法、装置、电子设备及存储介质 | |
CN114490246A (zh) | 一种监控方法、装置、电子设备以及存储介质 | |
CN114443634A (zh) | 数据质量检核方法、装置、设备及存储介质 | |
CN109165127B (zh) | 问题接口的定位方法、装置及电子设备 | |
CN109067726B (zh) | 建站系统识别方法、装置、电子设备及存储介质 | |
CN113297087A (zh) | 测试方法和装置 | |
CN111782629A (zh) | 一种特征加工脚本生成方法及装置 | |
CN111427870B (zh) | 一种资源管理方法、装置及设备 | |
CN111324846B (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 |