CN113836002A - 测试接口的验证方法及装置、存储介质、电子装置 - Google Patents

测试接口的验证方法及装置、存储介质、电子装置 Download PDF

Info

Publication number
CN113836002A
CN113836002A CN202110969865.9A CN202110969865A CN113836002A CN 113836002 A CN113836002 A CN 113836002A CN 202110969865 A CN202110969865 A CN 202110969865A CN 113836002 A CN113836002 A CN 113836002A
Authority
CN
China
Prior art keywords
test
tested
field
test interface
result
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
Application number
CN202110969865.9A
Other languages
English (en)
Inventor
李红燕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Haier Technology Co Ltd
Haier Smart Home Co Ltd
Original Assignee
Qingdao Haier Technology Co Ltd
Haier Smart Home Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Qingdao Haier Technology Co Ltd, Haier Smart Home Co Ltd filed Critical Qingdao Haier Technology Co Ltd
Priority to CN202110969865.9A priority Critical patent/CN113836002A/zh
Publication of CN113836002A publication Critical patent/CN113836002A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing

Abstract

本发明提供了一种测试接口的验证方法及装置、存储介质、电子装置,上述方法包括:获取待测试语料的字段内容,根据预设分割规则对字段内容进行分割,以确定待测试语料的预期结果;将待测试语料发送至对应测试接口,接收测试接口生成的测试结果;确定预期结果与测试结果的相似度,并根据相似度确定测试接口是否通过验证,解决了现有技术中无法确定待测试的测试接口在不同场景下的对应解析规则等问题,提升了对于不同场景下的测试接口测试的准确性,并且通过设置统一的分割规则使得测试流程更加便于操作,并验证了测试接口与测试接口对应的应用场景之间的一致性。

Description

测试接口的验证方法及装置、存储介质、电子装置
技术领域
本发明涉及通信领域,具体而言,涉及一种测试接口的验证方法及装置、存储介质、电子装置。
背景技术
当前对于NLP(Natural language Processing,自然语言处理,简称NLP)应用的场景繁多,不同的场景的解析结果多样,单一的断言方式无法测试到所有的解析结果,并且NLP语义理解的不同场景的解析协议多样,其对于测试结果的影响也不一致,相关技术中,测试人员还需要根据返回的测试结果分别确认,使得测试人员需要花费更多的时间进行接口对应解析规则的匹配确认。
针对相关技术中,无法确定待测试的测试接口在不同场景下的对应解析规则等问题,尚未提出有效的技术方案。
发明内容
本发明实施例提供了一种测试接口的验证方法及装置、存储介质、电子装置,以至少解决相关技术中,无法确定待测试的测试接口在不同场景下的对应解析规则等问题。
根据本发明的一个实施例,提供了一种测试接口的验证方法,包括:获取待测试语料的字段内容,根据预设分割规则对字段内容进行分割,以确定待测试语料的预期结果;将待测试语料发送至对应测试接口,接收测试接口生成的测试结果;确定预期结果与测试结果的相似度,并根据相似度确定测试接口是否通过验证。
在一个示例性实施例中,获取待测试语料的字段内容之前,上述方法还包括:根据测试接口的应用场景确定待验证的字段类型,其中,字段类型用于指示应用场景下对应接口的断言字段的类型;根据字段类型从数据库中调用对应的测试用例,以得到用于测试接口的待测试语料。
在一个示例性实施例中,根据预设分割规则对字段内容进行分割,以确定待测试语料的预期结果,包括:当待测试语料的字段内容对应多种语义或多种回复,通过第一类断言标识对字段内容进行分割,确定出待测试语料对应存在或关系的多个预期结果,其中,或关系用于指示多个预期结果中任意一项与测试结果相同时测试成功,所述回复用于指示预先设置的所述待测试语料的回复语句;当待测试语料的字段内容对应多种意图,通过第二类断言标识对字段内容进行分割,确定出待测试语料对应存在和关系的多个预期结果,其中,和关系用于指示所述多个预期结果中每一项与测试结果均相同时测试成功。
在一个示例性实施例中,将待测试语料发送至对应测试接口,接收测试接口生成的测试结果,包括:向测试接口发送指示待测试语料发送完成的公布请求;获取测试接口在接收到公布请求回复的断言字段,其中,断言字段用于指示测试接口对应的解析规则对于待测试语料的断言结果;根据断言字段确定测试接口生成的测试结果。
在一个示例性实施例中,确定预期结果与测试结果的相似度,并根据相似度确定测试接口是否通过验证,包括:当预期结果与测试结果不相似的情况下,确定测试接口未通过验证;当预期结果与测试结果相似的情况下,确定测试接口通过验证,并获取预期结果与测试结果的相似度与预设阈值的大小关系,以确定测试接口通过验证的类型。
在一个示例性实施例中,获取预期结果与测试结果的相似度与预设阈值的大小关系,以确定测试接口通过验证的类型,包括:当预期结果与测试结果的相似度大于预设阈值的情况下,确定测试接口的断言字段的类型为和关系;当预期结果与测试结果的相似度小于预设阈值的情况下,确定测试接口的断言字段的类型为或关系。
根据本发明的另一个实施例,提供了一种测试接口的验证装置,包括:分割模块,用于获取待测试语料的字段内容,根据预设分割规则对字段内容进行分割,以确定待测试语料的预期结果;发送模块,用于将待测试语料发送至对应测试接口,接收测试接口生成的测试结果;确定模块,用于确定预期结果与测试结果的相似度,并根据相似度确定测试接口是否通过验证。
在一个示例性实施例中,上述装置还包括:调用模块,用于根据测试接口的应用场景确定待验证的字段类型,其中,字段类型用于指示应用场景下对应接口的断言字段的类型;根据字段类型从数据库中调用对应的测试用例,以得到用于测试接口的待测试语料。
在一个示例性实施例中,上述分割模块,还用于当待测试语料的字段内容对应多种语义或多种回复,通过第一类断言标识对字段内容进行分割,确定出待测试语料对应存在或关系的多个预期结果,其中,或关系用于指示多个预期结果中任意一项与测试结果相同时测试成功,所述回复用于指示预先设置的所述待测试语料的回复语句;当待测试语料的字段内容对应多种意图,通过第二类断言标识对字段内容进行分割,确定出待测试语料对应存在和关系的多个预期结果,其中,和关系用于指示所述多个预期结果中每一项与测试结果均相同时测试成功。
在一个示例性实施例中,上述发送模块,还用于向测试接口发送指示待测试语料发送完成的公布请求;获取测试接口在接收到公布请求回复的断言字段,其中,断言字段用于指示测试接口对应的解析规则对于待测试语料的断言结果;根据断言字段确定测试接口生成的测试结果。
在一个示例性实施例中,上述确定模块,还用于当预期结果与测试结果不相似的情况下,确定测试接口未通过验证;当预期结果与测试结果相似的情况下,确定测试接口通过验证,并获取预期结果与测试结果的相似度与预设阈值的大小关系,以确定测试接口通过验证的类型。
在一个示例性实施例中,上述确定模块,还用于当预期结果与测试结果的相似度大于预设阈值的情况下,确定测试接口的断言字段的类型为和关系;当预期结果与测试结果的相似度小于预设阈值的情况下,确定测试接口的断言字段的类型为或关系。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,获取待测试语料的字段内容,根据预设分割规则对字段内容进行分割,以确定待测试语料的预期结果;将待测试语料发送至对应测试接口,接收测试接口生成的测试结果;确定预期结果与测试结果的相似度,并根据相似度确定测试接口是否通过验证,也就是说,根据预设分割规则对待测试语料进行划分确定出预期结果,并获取测试接口对于待测试语料的测试结果,比较预期结果与测试结果之间的联系以确定测试接口是否通过测试,以及通过测试的类型,因此,可以解决现有技术中无法确定待测试的测试接口在不同场景下的对应解析规则等问题,提升了对于不同场景下的测试接口测试的准确性,并且通过设置统一的分割规则使得测试流程更加便于操作,并验证了测试接口与测试接口对应的应用场景之间的一致性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种测试接口的验证方法的计算机终端的硬件结构框图;
图2是根据本发明实施例的测试接口的验证方法的流程图;
图3是根据本发明可选实施例的分类类型的断言测试流程图;
图4是根据本发明可选实施例的领域类型与意图类型的断言测试流程图;
图5是根据本发明可选实施例的回复类型的断言测试流程图;
图6是根据本发明实施例的测试接口的验证装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例所提供的方法实施例可以在计算机终端或者设备终端类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种测试接口的验证方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,在一个示例性实施例中,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的测试接口的验证方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种测试接口的验证方法,图2是根据本发明实施例的测试接口的验证方法的流程图,该流程包括如下步骤:
步骤S202,获取待测试语料的字段内容,根据预设分割规则对所述字段内容进行分割,以确定所述待测试语料的预期结果;
步骤S204,将所述待测试语料发送至对应测试接口,接收所述测试接口生成的测试结果;
步骤S206,确定所述预期结果与所述测试结果的相似度,并根据所述相似度确定所述测试接口是否通过验证。
通过上述步骤,获取待测试语料的字段内容,根据预设分割规则对字段内容进行分割,以确定待测试语料的预期结果;将待测试语料发送至对应测试接口,接收测试接口生成的测试结果;确定预期结果与测试结果的相似度,并根据相似度确定测试接口是否通过验证,也就是说,根据预设分割规则对待测试语料进行划分确定出预期结果,并获取测试接口对于待测试语料的测试结果,比较预期结果与测试结果之间的联系以确定测试接口是否通过测试,以及通过测试的类型,因此,可以解决现有技术中无法确定待测试的测试接口在不同场景下的对应解析规则等问题,提升了对于不同场景下的测试接口测试的准确性,并且通过设置统一的分割规则使得测试流程更加便于操作,并验证了测试接口与测试接口对应的应用场景之间的一致性。
需要说明的是,上述的相似度是根据字符串匹配断言确定的,通过校验预期的字符串和实际返回结果字符串比较是否一致。具体的,读取预期结果,发送请求获得实际结果(即测试结果),对比预期结果和实际结果,结果一致则测试通过,结果不一致则测试不通过。
在一个示例性实施例中,获取待测试语料的字段内容之前,上述方法还包括:根据测试接口的应用场景确定待验证的字段类型,其中,字段类型用于指示应用场景下对应接口的断言字段的类型;根据字段类型从数据库中调用对应的测试用例,以得到用于测试接口的待测试语料。
简而言之,由于测试接口在不同的应用场景下对应的断言不同,因此,可以根据应用场景估计测试接口可能反馈的断言字段类型,进而确定出与预估结果相似的待验证的字段类型,并从预先设置好的数据库中的测试用例表中确定出对应的测试用例,进而确定出移动终端用于测试接口的待测试语料。
上述步骤S202的实现方式有多种,在一个可选实施例中,可以通过以下方案实现:当待测试语料的字段内容对应多种语义或多种回复,通过第一类断言标识对字段内容进行分割,确定出待测试语料对应存在或关系的多个预期结果,其中,或关系用于指示多个预期结果中任意一项与测试结果相同时测试成功,所述回复用于指示预先设置的所述待测试语料的回复语句;当待测试语料的字段内容对应多种意图,通过第二类断言标识对字段内容进行分割,确定出待测试语料对应存在和关系的多个预期结果,其中,和关系用于指示所述多个预期结果中每一项与测试结果均相同时测试成功。
例如,当NLP接口(即测试接口)为一句语料可能有多种语义或者有多种回复的接口类型时,解析成任何一种都可以。此时预期结果可用第一类断言标识“|”分割,实际结果命中任何一种都可以测试通过。例如,菜谱播报结束时设计了多种回复语,回复语随机选择一条即可,预期回复字段需要写成“这道菜的做法到底了|菜已经做好了呢|没有这么多步哦|这道菜总共有28步,你可以对我说第一步怎么做”。
作为一种的可选的实施方式,当NLP接口为一句语料多意图,一句语料需要解析出多种意图,此时预期结果可用第二类断言标识“&”分割领域意图,实际结果需要命中全部才会测试通过。例如,对空调说:“开机制冷25度”,NLP接口需要解析出开机+制冷+设置为25度三种意图,预期结果意图domain需要写为open Device&set Mode&set Temperature(打开设备&选择模式&设置温度)。
需要说明的是,上述第一类断言标识以及第二类断言标识的标识符号仅是一种显示方式,还可以通过预设其他符号进行替代。
在一个示例性实施例中,将待测试语料发送至对应测试接口,接收测试接口生成的测试结果,包括:向测试接口发送指示待测试语料发送完成的公布请求;获取测试接口在接收到公布请求回复的断言字段,其中,断言字段用于指示测试接口对应的解析规则对于待测试语料的断言结果;根据断言字段确定测试接口生成的测试结果。
简单来说,为了确保返回的测试结果更加完整,在移动终端向测试接口发送完成对应的待测试语料后,通过向测试接口发送公布请求,用于请求测试接口反馈测试结果,继而移动终端获取到测试接口在接收到公布请求回复的断言字段,并对断言字段进行分析确定,以得到测试接口对应的测试结果。
在一个示例性实施例中,确定预期结果与测试结果的相似度,并根据相似度确定测试接口是否通过验证,包括:当预期结果与测试结果不相似的情况下,确定测试接口未通过验证;当预期结果与测试结果相似的情况下,确定测试接口通过验证,并获取预期结果与测试结果的相似度与预设阈值的大小关系,以确定测试接口通过验证的类型。
可以理解是,通过比较预期结果与测试结果的相似程度可以更好的确定测试接口对应的实际测试结果是否符合该应用场景下对应的预期结果,对测试结果与应用场景的契合度进行确认。
在一个示例性实施例中,获取预期结果与测试结果的相似度与预设阈值的大小关系,以确定测试接口通过验证的类型,包括:当预期结果与测试结果的相似度大于预设阈值的情况下,确定测试接口的断言字段的类型为和关系;当预期结果与测试结果的相似度小于预设阈值的情况下,确定测试接口的断言字段的类型为或关系。
为了更好的理解上述测试接口的验证方法的过程,以下结合几个可选实施例对上述测试接口的验证方法流程进行说明。
本发明可选实施例中,主要提供了一种针对NLP接口应用场景设计断言模板,根据应用场景的不同,为测试用例(相当于本发明实施例中的待测试语料)配置不同的分割规则,继而将确定不同应用场景下的预期结果,并通过实际结果在预期结果的命中情况,确定NLP接口在当前应用场景下对应的断言类型。
作为一种可选的实施方式,图3为本发明可选实施例的分类类型的断言测试流程图,包括以下步骤:
步骤S302、读取测试用例表中的预期分类字段(即Category字段);
步骤S304、移动终端发送Post请求(相当于本发明实施例中的公布请求),获取测试接口对应返回体中实际分类字段(即Category字段);
步骤S306、比较预期分类字段(即Category字段)与实际分类字段(即Category字段)是否一致;一致则断言成功,测试接口的断言类型与测试用例表中的预期分类字段(即Category字段)对应的标准断言类型相同;不一致则执行步骤S308。
步骤S308、预期分类字段(即Category字段)与实际分类字段(即Category字段)不一致,确定设置的预期分类字段(即Category字段)是否为空;为空则表示测试接口返回任意一种实际分类字段(即Category字段)均可通过测试,即可能当前接口无需确认分类字段(即Category字段)对应的断言类型,反之,则测试接口断言失败,未通过分类字段(即Category字段)对应的断言类型的断言测试。
作为一种可选的实施方式,图4为本发明可选实施例的领域类型与意图类型的断言测试流程图,包括以下步骤:
步骤一、读取测试用例表中的预期领域字段(即domain字段)、预期意图字段(即action字段);
步骤二、移动终端发送Post请求,获取测试接口对应返回体中实际领域字段、实际意图字段;
步骤三、确定预期意图字段对应的多个意图之间是否含有“&”标识(相当于本发明实施例中的和关系),不包含执行步骤四,包含执行步骤七,具体的表示当测试用例表中对应的测试用例在通过“&”进行分割领域意图后,使用包含“&”测试用例对NLP接口测试时,需要测试出的实际结果命中测试用例的全部才会测试通过。
步骤四、当预期意图字段不包含“&”标识后,将预期领域字段、预期意图字段分别通过“|”标识进行拆分,生成对应的预期领域列表(即domain-list)、预期意图列表(即action-list);
步骤五、将预期领域列表与预期意图列表进行匹配对应,继而拼接成键值对放入综合列表(即doac-list)中,其中,综合列表中的每一项对应一种领域以及该领域下对应的多个意图。将实际领域字段、实际意图字段在综合列表中进行匹配,若匹配成功者证明测试接口对应的领域类型以及意图类型的断言测试通过,若匹配失败者证明测试接口对应的领域类型以及意图类型的断言测试失败。
步骤六、将预期意图字段通过“&”标识拆分成列表预期意图列表(即expectaction list);
步骤七、遍历返回体中的所有实际意图字段拼装成实际意图列表(即actionlist);比较预期意图列表与实际意图列表是否一致,一致则证明测试接口对应的意图类型的断言测试通过,不一致则明测试接口对应的意图类型的断言测试失败。
作为一种可选的实施方式,图5为本发明可选实施例的回复类型的断言测试流程图,包括以下步骤:
步骤S500、读取测试用例表中的预期回复字段(即response字段);
步骤S502、移动终端发送Post请求,获取测试接口对应返回体中实际回复字段;
步骤S504、确定预期回复字段对应的多个回复之间是否含有“&”标识;包含执行步骤S506,不包含执行S508。
步骤S506、将预期回复字段通过“&”标识拆分成和关系的预期回复列表;遍历预期回复列表确定是否都包含在返回体中的实际回复字段中;全部包含则说明回复类型的断言测试成功,反之,则测试失败。
步骤S508、将预期回复字段通过“|”标识拆分成或关系的预期回复列表;遍历预期回复列表确定是否都不包含在返回体中的实际回复字段中;不包含则说明回复类型的断言测试成功,反之,则测试失败。
作为一种的可选的实施方式,当NLP接口为一句语料可能有多种语义或者有多种回复的接口类型时,解析成任何一种都可以。此时预期结果可用“|”分割,实际结果命中任何一种都可以测试通过。例如,菜谱播报结束时设计了多种回复语,回复语随机选择一条即可,预期回复字段需要写成“这道菜的做法到底了|菜已经做好了呢|没有这么多步哦|这道菜总共有28步,你可以对我说第一步怎么做”。
作为一种的可选的实施方式,当NLP接口为一句语料多意图,一句语料需要解析出多种意图,此时预期结果可用“&”分割领域意图,实际结果需要命中全部才会测试通过。例如,对空调说:“开机制冷25度”,NLP接口需要解析出开机+制冷+设置为25度三种意图,预期结果意图domain需要写为open Device&set Mode&set Temperature(打开设备&选择模式&设置温度)。
综上,通过本发明可选实施例,针对NLP接口的应用场景设计断言模板,当应用场景为一句语料可能有多种语义,解析成任何一种都可以理解。此时预期结果可用“|”分割领域意图,实际结果命中任何一种都可以测试通过;当应用场景为一句语料多意图,例如空调制冷20度,需要解析出设置制冷模式和设置20度两种意图,此时预期结果可用“&”分割领域意图,实际结果需要命中全部才会测试通过,进而可以快速确认测试NLP接口在不同场景下的解析规则是否正确,并且断言模板简单通用,测试场景全,测试结果准确可靠。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种测试接口的验证装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6是根据本发明实施例的测试接口的验证装置的结构框图,如图6所示,该装置包括:
分割模块62,用于获取待测试语料的字段内容,根据预设分割规则对所述字段内容进行分割,以确定所述待测试语料的预期结果;
发送模块64,用于将所述待测试语料发送至对应测试接口,接收所述测试接口生成的测试结果;
确定模块66,用于确定所述预期结果与所述测试结果的相似度,并根据所述相似度确定所述测试接口是否通过验证。
通过上述装置,获取待测试语料的字段内容,根据预设分割规则对字段内容进行分割,以确定待测试语料的预期结果;将待测试语料发送至对应测试接口,接收测试接口生成的测试结果;确定预期结果与测试结果的相似度,并根据相似度确定测试接口是否通过验证,也就是说,根据预设分割规则对待测试语料进行划分确定出预期结果,并获取测试接口对于待测试语料的测试结果,比较预期结果与测试结果之间的联系以确定测试接口是否通过测试,以及通过测试的类型,因此,可以解决现有技术中无法确定待测试的测试接口在不同场景下的对应解析规则等问题,提升了对于不同场景下的测试接口测试的准确性,并且通过设置统一的分割规则使得测试流程更加便于操作,并验证了测试接口与测试接口对应的应用场景之间的一致性。
需要说明的是,上述的相似度是根据字符串匹配断言确定的,通过校验预期的字符串和实际返回结果字符串比较是否一致。具体的,读取预期结果,发送请求获得实际结果(即测试结果),对比预期结果和实际结果,结果一致则测试通过,结果不一致则测试不通过。
在一个示例性实施例中,上述装置还包括:调用模块,用于根据测试接口的应用场景确定待验证的字段类型,其中,字段类型用于指示应用场景下对应接口的断言字段的类型;根据字段类型从数据库中调用对应的测试用例,以得到用于测试接口的待测试语料。
简而言之,由于测试接口在不同的应用场景下对应的断言不同,因此,可以根据应用场景估计测试接口可能反馈的断言字段类型,进而确定出与预估结果相似的待验证的字段类型,并从预先设置好的数据库中的测试用例表中确定出对应的测试用例,进而确定出移动终端用于测试接口的待测试语料。
在一个示例性实施例中,上述分割模块,还用于当待测试语料的字段内容对应多种语义或多种回复,通过第一类断言标识对字段内容进行分割,确定出待测试语料对应存在或关系的多个预期结果,其中,或关系用于指示多个预期结果中任意一项与测试结果相同时测试成功,所述回复用于指示预先设置的所述待测试语料的回复语句;当待测试语料的字段内容对应多种意图,通过第二类断言标识对字段内容进行分割,确定出待测试语料对应存在和关系的多个预期结果,其中,和关系用于指示所述多个预期结果中每一项与测试结果均相同时测试成功。
例如,当NLP接口(即测试接口)为一句语料可能有多种语义或者有多种回复的接口类型时,解析成任何一种都可以。此时预期结果可用第一类断言标识“|”分割,实际结果命中任何一种都可以测试通过。例如,菜谱播报结束时设计了多种回复语,回复语随机选择一条即可,预期回复字段需要写成“这道菜的做法到底了|菜已经做好了呢|没有这么多步哦|这道菜总共有28步,你可以对我说第一步怎么做”。
作为一种的可选的实施方式,当NLP接口为一句语料多意图,一句语料需要解析出多种意图,此时预期结果可用第二类断言标识“&”分割领域意图,实际结果需要命中全部才会测试通过。例如,对空调说:“开机制冷25度”,NLP接口需要解析出开机+制冷+设置为25度三种意图,预期结果意图domain需要写为open Device&set Mode&set Temperature(打开设备&选择模式&设置温度)。
需要说明的是,上述第一类断言标识以及第二类断言标识的标识符号仅是一种显示方式,还可以通过预设其他符号进行替代。
在一个示例性实施例中,上述发送模块,还用于向测试接口发送指示待测试语料发送完成的公布请求;获取测试接口在接收到公布请求回复的断言字段,其中,断言字段用于指示测试接口对应的解析规则对于待测试语料的断言结果;根据断言字段确定测试接口生成的测试结果。
简单来说,为了确保返回的测试结果更加完整,在移动终端向测试接口发送完成对应的待测试语料后,通过向测试接口发送公布请求,用于请求测试接口反馈测试结果,继而移动终端获取到测试接口在接收到公布请求回复的断言字段,并对断言字段进行分析确定,以得到测试接口对应的测试结果。
在一个示例性实施例中,上述确定模块,还用于当预期结果与测试结果不相似的情况下,确定测试接口未通过验证;当预期结果与测试结果相似的情况下,确定测试接口通过验证,并获取预期结果与测试结果的相似度与预设阈值的大小关系,以确定测试接口通过验证的类型。
可以理解是,通过比较预期结果与测试结果的相似程度可以更好的确定测试接口对应的实际测试结果是否符合该应用场景下对应的预期结果,对测试结果与应用场景的契合度进行确认。
在一个示例性实施例中,上述确定模块,还用于当预期结果与测试结果的相似度大于预设阈值的情况下,确定测试接口的断言字段的类型为和关系;当预期结果与测试结果的相似度小于预设阈值的情况下,确定测试接口的断言字段的类型为或关系。
在本发明的描述中,需要理解的是,术语中“中心”、“上”、“下”、“前”、“后”、“左”、“右”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或组件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性。
在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“连接”、“相连”应做广义理解,例如,可以是固定连接,也可以是拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以是通过中间媒介间接相连,可以是两个组件内部的连通。当组件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个组件上或者也可以存在居中的组件。当一个组件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明的具体含义。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取待测试语料的字段内容,根据预设分割规则对所述字段内容进行分割,以确定所述待测试语料的预期结果;
S2,将所述待测试语料发送至对应测试接口,接收所述测试接口生成的测试结果;
S3,确定所述预期结果与所述测试结果的相似度,并根据所述相似度确定所述测试接口是否通过验证。
在一个示例性实施例中,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
在一个示例性实施例中,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取待测试语料的字段内容,根据预设分割规则对所述字段内容进行分割,以确定所述待测试语料的预期结果;
S2,将所述待测试语料发送至对应测试接口,接收所述测试接口生成的测试结果;
S3,确定所述预期结果与所述测试结果的相似度,并根据所述相似度确定所述测试接口是否通过验证。
在一个示例性实施例中,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,在一个示例性实施例中,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种测试接口的验证方法,其特征在于,包括:
获取待测试语料的字段内容,根据预设分割规则对所述字段内容进行分割,以确定所述待测试语料的预期结果;
将所述待测试语料发送至对应测试接口,接收所述测试接口生成的测试结果;
确定所述预期结果与所述测试结果的相似度,并根据所述相似度确定所述测试接口是否通过验证。
2.根据权利要求1所述的方法,其特征在于,获取待测试语料的字段内容之前,所述方法还包括:
根据测试接口的应用场景确定待验证的字段类型,其中,所述字段类型用于指示应用场景下对应接口的断言字段的类型;
根据所述字段类型从数据库中调用对应的测试用例,以得到用于测试接口的待测试语料。
3.根据权利要求1所述的方法,其特征在于,根据预设分割规则对所述字段内容进行分割,以确定所述待测试语料的预期结果,包括:
当所述待测试语料的字段内容对应多种语义或多种回复,通过第一类断言标识对所述字段内容进行分割,确定出所述待测试语料对应存在或关系的多个预期结果,其中,所述或关系用于指示所述多个预期结果中任意一项与测试结果相同时测试成功,所述回复用于指示预先设置的所述待测试语料的回复语句;
当所述待测试语料的字段内容对应多种意图,通过第二类断言标识对所述字段内容进行分割,确定出所述待测试语料对应存在和关系的多个预期结果,其中,所述和关系用于指示所述多个预期结果中每一项与测试结果均相同时测试成功。
4.根据权利要求1所述的方法,其特征在于,将所述待测试语料发送至对应测试接口,接收所述测试接口生成的测试结果,包括:
向所述测试接口发送指示所述待测试语料发送完成的公布请求;
获取所述测试接口在接收到所述公布请求回复的断言字段,其中,所述断言字段用于指示测试接口对应的解析规则对于待测试语料的断言结果;
根据所述断言字段确定所述测试接口生成的测试结果。
5.根据权利要求1所述的方法,其特征在于,确定所述预期结果与所述测试结果的相似度,并根据所述相似度确定所述测试接口是否通过验证,包括:
当所述预期结果与所述测试结果不相似的情况下,确定所述测试接口未通过验证;
当所述预期结果与所述测试结果相似的情况下,确定所述测试接口通过验证,并获取所述预期结果与所述测试结果的相似度与预设阈值的大小关系,以确定所述测试接口通过验证的类型。
6.根据权利要求5所述的方法,其特征在于,获取所述预期结果与所述测试结果的相似度与预设阈值的大小关系,以确定所述测试接口通过验证的类型,包括:
当所述预期结果与所述测试结果的相似度大于预设阈值的情况下,确定所述测试接口的断言字段的类型为和关系;
当所述预期结果与所述测试结果的相似度小于预设阈值的情况下,确定所述测试接口的断言字段的类型为或关系。
7.一种测试接口的验证装置,其特征在于,包括:
分割模块,用于获取待测试语料的字段内容,根据预设分割规则对所述字段内容进行分割,以确定所述待测试语料的预期结果;
发送模块,用于将所述待测试语料发送至对应测试接口,接收所述测试接口生成的测试结果;
确定模块,用于确定所述预期结果与所述测试结果的相似度,并根据所述相似度确定所述测试接口是否通过验证。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:调用模块,用于根据测试接口的应用场景确定待验证的字段类型,其中,所述字段类型用于指示应用场景下对应接口的断言字段的类型;根据所述字段类型从数据库中调用对应的测试用例,以得到用于测试接口的待测试语料。
9.一种计算机可读的存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至6任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至6任一项中所述的方法。
CN202110969865.9A 2021-08-23 2021-08-23 测试接口的验证方法及装置、存储介质、电子装置 Pending CN113836002A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110969865.9A CN113836002A (zh) 2021-08-23 2021-08-23 测试接口的验证方法及装置、存储介质、电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110969865.9A CN113836002A (zh) 2021-08-23 2021-08-23 测试接口的验证方法及装置、存储介质、电子装置

Publications (1)

Publication Number Publication Date
CN113836002A true CN113836002A (zh) 2021-12-24

Family

ID=78960907

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110969865.9A Pending CN113836002A (zh) 2021-08-23 2021-08-23 测试接口的验证方法及装置、存储介质、电子装置

Country Status (1)

Country Link
CN (1) CN113836002A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114676062A (zh) * 2022-04-06 2022-06-28 北京百度网讯科技有限公司 用于接口的差异数据测试方法及装置、电子设备和介质
CN114996040A (zh) * 2022-08-04 2022-09-02 飞天诚信科技股份有限公司 一种服务接口调用方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114676062A (zh) * 2022-04-06 2022-06-28 北京百度网讯科技有限公司 用于接口的差异数据测试方法及装置、电子设备和介质
CN114996040A (zh) * 2022-08-04 2022-09-02 飞天诚信科技股份有限公司 一种服务接口调用方法及装置
CN114996040B (zh) * 2022-08-04 2022-10-04 飞天诚信科技股份有限公司 一种服务接口调用方法及装置

Similar Documents

Publication Publication Date Title
CN107656874B (zh) 一种接口测试方法、装置、模拟挡板及系统
CN109800258B (zh) 数据文件部署方法、装置、计算机设备及存储介质
CN113836002A (zh) 测试接口的验证方法及装置、存储介质、电子装置
CN110427375B (zh) 字段类别的识别方法及装置
CN109726108B (zh) 基于模拟数据的前端代码测试方法、装置、系统和介质
CN110874528B (zh) 文本相似度的获取方法及装置
CN112416962A (zh) 数据查询方法、装置以及存储介质
WO2004023342A1 (en) Method and system for registering goods information
CN112235124B (zh) 一种皮基站配置方法、装置、存储介质和电子装置
CN111563037B (zh) 基于测试试题的测试优化方法及装置、存储介质、终端
CN110569504B (zh) 一种关系词确定方法及装置
CN110929519B (zh) 实体属性抽取方法及装置
CN111324892A (zh) 生成脚本文件的软件基因和脚本检测的方法、装置及介质
CN110705258A (zh) 文本实体识别方法及装置
CN109005469A (zh) 一种消息格式的转换方法、装置、存储介质及安卓终端
CN115562999A (zh) 接口测试方法、装置、设备和计算机可读存储介质
CN110298018B (zh) 文本数据处理方法、装置、计算机设备及存储介质
CN113821692A (zh) 数据处理方法、装置、服务器及存储介质
CN111242256B (zh) 信息验证方法、装置及终端
CN111538672A (zh) 测试案例分层测试方法、计算机设备及计算机可读存储介质
CN111695031A (zh) 基于标签的搜索方法、装置、服务器及存储介质
CN109413506A (zh) 一种弹幕数据的校验方法、装置、终端及存储介质
CN116820845A (zh) Api接口输入校验测试方法、测试装置和电子设备
CN110532561B (zh) 数据检测方法及装置、存储介质、电子装置
CN114697368A (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