CN109614327A - 用于输出信息的方法和装置 - Google Patents

用于输出信息的方法和装置 Download PDF

Info

Publication number
CN109614327A
CN109614327A CN201811485184.XA CN201811485184A CN109614327A CN 109614327 A CN109614327 A CN 109614327A CN 201811485184 A CN201811485184 A CN 201811485184A CN 109614327 A CN109614327 A CN 109614327A
Authority
CN
China
Prior art keywords
key
value pair
value
keyword
verification
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
Application number
CN201811485184.XA
Other languages
English (en)
Other versions
CN109614327B (zh
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.)
Beijing ByteDance Network Technology Co Ltd
Original Assignee
Beijing ByteDance Network Technology 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 Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN201811485184.XA priority Critical patent/CN109614327B/zh
Publication of CN109614327A publication Critical patent/CN109614327A/zh
Application granted granted Critical
Publication of CN109614327B publication Critical patent/CN109614327B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum

Abstract

本申请实施例公开了用于输出信息的方法和装置。该方法的一具体实施方式包括:获取目标接口的返回数据;对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集;对于键值对集中的键值对,获取与该键值对中的关键字对应的校验用信息;利用校验用信息校验该键值对中的值是否符合预设条件;响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息。该实施方式实现了对接口的返回数据所包括的各个键值对的分别校验。

Description

用于输出信息的方法和装置
技术领域
本申请实施例涉及计算机技术领域,具体涉及用于输出信息的方法和装置。
背景技术
在如接口测试等一些应用场景中,通常需要对接口的返回数据进行校验。一般地,接口的返回数据都是由多个键值对组成。在校验返回数据时,通常是通过判断返回数据所包含的关键字以及关键字的取值是否符合预期来对返回数据完成校验。
发明内容
本申请实施例提出了用于输出信息的方法和装置。
第一方面,本申请实施例提供了一种用于输出信息的方法,该方法包括:获取目标接口的返回数据;对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集;对于键值对集中的键值对,获取与该键值对中的关键字对应的校验用信息;利用校验用信息校验该键值对中的值是否符合预设条件;响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息。
在一些实施例中,获取与该键值对中的关键字对应的校验用信息,包括:响应于确定该键值对中的关键字不属于预设的关键字集合,获取与该键值对中的关键字对应的校验用信息。
在一些实施例中,校验用信息为正则表达式;以及校验用信息通过如下步骤确定:获取目标接口的至少一个历史返回数据包括的、与该键值对中的关键字对应的且符合所述预设条件的值,得到值集;对得到的值集中的值进行字符串分析以确定校验用信息。
在一些实施例中,在对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集之后,方法还包括:确定键值对集中的键值对的位置标识,其中,位置标识用于表示键值对集中的键值对中的关键字在目标接口的返回数据中的位置。
在一些实施例中,获取与该键值对中的关键字对应的校验用信息,包括:确定该键值对中的关键字的位置标识作为目标位置标识;获取与目标位置标识对应的、与该键值对中的关键字对应的校验用信息。
在一些实施例中,输出该键值对的相关信息,包括:输出该键值对中的关键字和该键值对中的关键字的位置标识。
第二方面,本申请实施例提供了一种用于输出信息的装置,该装置包括:获取单元,被配置成获取目标接口的返回数据;分析单元,被配置成对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集;校验单元,被配置成对于键值对集中的键值对,获取与该键值对中的关键字对应的校验用信息;利用校验用信息校验该键值对中的值是否符合预设条件;响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息。
在一些实施例中,校验单元进一步被配置成:响应于确定该键值对中的关键字不属于预设的关键字集合,获取与该键值对中的关键字对应的校验用信息。
在一些实施例中,校验用信息为正则表达式;以及校验用信息通过如下步骤确定:获取目标接口的至少一个历史返回数据包括的、与该键值对中的关键字对应的且符合所述预设条件的值,得到值集;对得到的值集中的值进行字符串分析以确定校验用信息。
在一些实施例中,用于输出信息的装置还包括:确定单元,被配置成确定键值对集中的键值对的位置标识,其中,位置标识用于表示键值对集中的键值对中的关键字在目标接口的返回数据中的位置。
在一些实施例中,校验单元进一步被配置成:确定该键值对中的关键字的位置标识作为目标位置标识;获取与目标位置标识对应的、与该键值对中的关键字对应的校验用信息。
在一些实施例中,校验单元进一步被配置成:输出该键值对中的关键字和该键值对中的关键字的位置标识。
第三方面,本申请实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如第一方面中任一实现方式描述的方法。
第四方面,本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面中任一实现方式描述的方法。
本申请实施例提供的用于输出信息的方法和装置,通过获取目标接口的返回数据;对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集;对于键值对集中的键值对,获取与该键值对中的关键字对应的校验用信息;利用校验用信息校验该键值对中的值是否符合预设条件;响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息,从而实现了对接口的返回数据所包括的各个键值对的分别校验,以及在确定键值对不符合预期时,输出相关信息以进行提示。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请的一个实施例可以应用于其中的示例性系统架构图;
图2是根据本申请的用于输出信息的方法的一个实施例的流程图;
图3是根据本申请实施例的用于输出信息的方法的一个应用场景的示意图;
图4是根据本申请的用于输出信息的方法的又一个实施例的流程图;
图5是根据本申请的用于输出信息的装置的一个实施例的结构示意图;
图6是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于输出信息的方法或用于输出信息的装置的实施例的示例性架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种客户端应用。例如浏览器类应用、社交通信类应用、搜索类应用、内容分享类应用等。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是支持利用接口传输数据的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务的多个软件或软件模块),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以是提供各种服务的服务器,例如为终端设备101、102、103所接收的目标接口的返回数据进行数据分析的数据分析服务器。数据分析服务器可以对接收到的返回数据进行分析、校验等处理。进一步地,数据分析服务器还可以将分析结果或校验结果返回至终端设备。
需要说明的是,上述目标接口的返回数据也可以直接存储在服务器105的本地,服务器105可以直接提取本地所存储的目标接口的返回数据并进行处理,此时,可以不存在终端设备101、102、103和网络104。
需要说明的是,本申请实施例所提供的用于输出信息的方法一般由服务器105执行,相应地,用于输出信息的装置一般设置于服务器105中。
还需要指出的是,终端设备101、102、103中也可以安装有数据分析类应用。终端设备101、102、103也可以基于数据分析类应用对目标接口的返回数据进行分析等处理。此时,用于输出信息的方法也可以由终端设备101、102、103执行,相应地,用于输出信息的装置也可以设置于终端设备101、102、103中。此时,示例性系统架构100可以不存在服务器105和网络104。
需要说明的是,服务器可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,其示出了根据本申请的用于输出信息的方法的一个实施例的流程200。该用于输出信息的方法包括以下步骤:
步骤201,获取目标接口的返回数据。
在本实施例中,用于输出信息的方法的执行主体(如图1所示的服务器105)可以利用有线连接或无线连接的方式从本地或其它存储设备获取目标接口的返回数据。
其中,接口可以泛指应用不同部分之间相互作用的部分。接口包括但不限于:各种应用程序的API(Application Programming Interface,应用程序编程接口)、数据库系统的访问接口、HTTP(HyperText Transfer Protocol,超文本传输协议)接口、WebService接口等。
其中,目标接口可以是预先指定的接口。目标接口也可以是根据预设条件确定出的接口。例如,目标接口可以是在指定时间内返回有返回数据的接口。
步骤202,对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集。
在本实施例中,键值对是一种常用的数据存储或数据组织形式。一个键值对包括一个关键字和关键字对应的取值。返回数据可以由一个或多个键值对组成。
键值对可以包括嵌套型的键值对和非嵌套型的键值对。一般地,非嵌套型的键值对中包括一个关键字。在嵌套型的键值对中包括两个或两个以上的关键字。
作为示例,在非嵌套型的键值对{性别:女}中,包括性别一个关键字。性别的取值为女。在嵌套型的键值对{信息:{性别:女,年龄:20}}中,包括信息、性别、年龄三个关键字。其中,信息的取值为{性别:女,年龄:20},性别的取值为女,年龄的取值为20。
从上面的示例也可以看出,对于嵌套型的键值对,只需要对其包含的非嵌套型的键值对进行校验,就无需再对嵌套型的键值对本身整体再进行校验,从而提升校验效率。因此,在得到返回数据之后,可以利用现有的各种用于解析键值对的分析方法对返回数据进行分析,以得到返回数据所包括的各个非嵌套型的键值对。
作为示例,常见的接口的返回数据的格式包括JSON(JavaScript ObjectNotation,JS对象简谱)格式。JSON格式的数据可以是由一个或多个的键值对组成。对于JSON格式的返回数据,可以利用各种开源的数据解析包(如GSON、FastJSON等)进行分析,以得到返回数据包括的各个非嵌套型的键值对。
步骤203,对于键值对集中的键值对,执行如下2031-2033的步骤:
步骤2031,获取与该键值对中的关键字对应的校验用信息。
在本实施例中,可以对目标接口的返回数据包括的各个关键字分别预先设置对应的校验用信息。校验用信息可以用于对对应的关键字的值进行校验以确定关键字的值是否满足预设条件。其中,校验用信息和预设条件可以根据实际的应用场景和应用需求来设置。应当可以理解,校验用信息和预设条件是对应关联设置的。
作为示例,采用的校验方式可以为利用哈希校验来验证关键字的值对应的哈希值是否等于预设的哈希值。此时,校验用信息可以为预设的哈希校验工具或哈希校验算法以及预期的哈希值。预设条件可以为关键字的值通过预设的哈希校验工具或哈希校验算法得出的哈希值和预期的哈希值相等。
在本实施例的一些可选的实现方式中,校验用信息可以为正则表达式。此时,可以预先针对每个关键字设置对应的正则表达式。其中,正则表达式可以表达一种对关键字的值所包含的字符串的过滤逻辑。通过校验关键字的值是否符合正则表达式所表达的过滤逻辑来确定关键字的值是否符合预设条件。
在校验用信息为正则表达式时,对于任一关键字,该关键字对应的校验用信息可以通过如下步骤确定:获取目标接口的至少一个历史返回数据包括的、与该键值对中的关键字对应的且符合预设条件的值,得到值集;对得到的值集中的值进行字符串分析以确定校验用信息。
具体地,可以根据关键字所需符合的预设条件,以及符合预设条件的历史返回数据包括的该关键字的值,由技术人员或利用现有的一些正则表达式生成工具预先创建该关键字对应的正则表达式。
可选地,可以利用目标接口的相关技术文档(如需求文档、API文档等)中对返回数据的描述或需求,创建返回数据中的各关键字对应的正则表达式。
由于目标接口的返回数据包括的各个键值对中可能存在取值会变化的键值对。换言之,不同时间的返回数据中,有些关键字的取值是变化的。对于这种情况,利用历史返回数据,创建各关键字的正则表达式,从而能够较好的利用正则表达式去校验各关键字的取值是否符合预设条件。这种方式也可以避免由于很难穷举所有的取值,而造成的校验困难的情况。
在本实施例的一些可选的实现方式中,可以预设关键字集合。对于任一键值对,可以先确定该键值对中的关键字是否属于预设的关键字集合。在确定该键值对中的关键字不属于预设的关键字集合时,再获取与该键值对中的关键字对应的校验用信息。
在一些应用场景下,目标接口的返回数据包括的键值对中有一些关键字的取值可能是随机的。例如,对于时间戳这种关键字,由于时间戳是用于唯一标识某一刻的时间,因此,时间戳的取值是一直变化的。由于这种关键字的取值的多变性,以及取值范围的广阔性,使得较难准确的利用一定的规则来覆盖到这种关键字的所有取值,由此,对这种关键字容易出现错误的校验结果。考虑到这种情况,可以将时间戳这种类型的关键字添加至预设的关键字集合中,避免对这种关键字的错误校验。
在一些应用场景下,目标接口的返回数据包括的键值对中有一些关键字的取值可能是技术人员不关心的,或者是根据实际需求不需要校验的。这种情况下,可以将这些关键字添加至预设的关键字集合中,从而避免对这些关键字进行校验而花费时间成本,有助于提升校验速度。
步骤2032,利用校验用信息校验该键值对中的值是否符合预设条件。
步骤2033,响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息。
在本实施例中,键值对的相关信息可以指与键值对关联的各种信息。例如,相关信息可以为键值对中的关键字和/或值。相关信息可以为键值对对应的接口的信息,即上述目标接口的标识等。具体地,可以根据实际的应用需求,设置需要输出的信息。
继续参见图3,图3是根据本实施例的用于输出信息的方法的应用场景的一个示意图300。在图3的应用场景中,可以先获取目标接口的返回数据301为:{性别:女,年龄:200}。然后对返回数据301进行字符串分析,确定返回数据301包括的非嵌套型的键值对,得到键值对集。如图中所示,返回数据301包括两个非嵌套型的键值对,分别为键值对302:{性别:女}和键值对303:{年龄:200}。
之后,可以对利用预设的、各关键字对应的校验用信息和预设条件304对键值对302和键值对303分别进行校验。具体地,可以先获取关键字“性别”对应的校验用信息为校验算法A。之后,可以利用校验算法A对关键字“性别”的取值“女”进行校验,以确定取值“女”是否符合关键字“性别”对应的预设条件。如图中标号304所示,关键字“性别”对应的预设条件为:“女”或“男”。因此,键值对302中的值符合预设条件。
之后,可以获取关键字“年龄”对应的校验用信息为校验算法B。接着可以利用校验算法B对关键字“年龄”的取值“200”进行校验,以确定取值“200”是否符合关键字“年龄”对应的预设条件。如图中标号304所示,关键字“年龄”对应的预设条件为:不超过三位数,且三位数时,第一位小于“1”。因此,键值对303中的值不符合预设条件。
进一步地,可以输出其中的值不符合预设条件的键值对303中的关键字“年龄”,以供用户了解校验结果。
本申请的上述实施例提供的方法通过先对目标接口的返回数据进行分析,以得到返回数据所包括的各个非嵌套型的键值对,然后利用各个键值对分别对应的校验用信息对各个键值对进行校验,以完成对返回数据的有效校验。在确定键值对中的值不符合预设条件时,输出键值对的相关信息,以及时的向用户提示校验结果异常的键值对的信息。
进一步参考图4,其示出了用于输出信息的方法的又一个实施例的流程400。该用于输出信息的方法的流程400,包括以下步骤:
步骤401,获取目标接口的返回数据。
步骤402,对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集。
上述步骤401和402的具体的执行过程可参考图2对应实施例中的步骤201和202的相关说明,在此不再赘述。
步骤403,确定键值对集中的键值对的位置标识。
在本实施例中,位置标识可以用于表示键值对集中的键值对中的关键字在目标接口的返回数据中的位置。由于返回数据包括的各个键值对中可能存在相同的关键字,因此,可以利用每个键值对在返回数据中的位置来区分各个关键字。基于此,位置标识可以用于唯一标识各个关键字。
位置标识的形式可以根据实际的应用需求进行设置。例如,可以依次采用数字编号来作为各个键值对的位置标识。又例如,可以将返回数据对应的键值对集用树形结构表示,每个键值对可以作为一个结点。此时,可以采用每个键值对所在结点的路径作为各个键值对的位置标识。
具体地,可以利用现有的一些可以用于分析返回数据中的各键值对的位置的工具(例如JsonPath、HiJson等)对返回数据进行分析,以得到能够描述返回数据中的各个键值对的位置关系的分析结果。从而可以基于分析结果,对返回数据中的各个键值对的位置设置位置标识。
步骤404,对于键值对集中的键值对,执行如下4041-4044的步骤:
步骤4041,确定该键值对中的关键字的位置标识作为目标位置标识。
步骤4042,获取与目标位置标识对应的、与该键值对中的关键字对应的校验用信息。
在本实施例中,可以预先设置位置标识和关键字,与校验用信息的对应关系。由于采用位置标识可以区分各个关键字,因此,这种对应关系的设置可以避免出现相同的关键字而导致的查找的校验用信息可能是错误的情况。
步骤4043,利用校验用信息校验该键值对中的值是否符合预设条件。
步骤4044,响应于确定该键值对中的值不符合预设条件,输出该键值对中的关键字和该键值对中的关键字的位置标识。
从图4中可以看出,与图2对应的实施例相比,本实施例中的用于输出信息的方法的流程400突出了确定返回数据中的各个键值对的位置标识的步骤。由此,本实施例描述的方案可以使用位置标识来区分返回数据中的各个键值对,从而避免由于存在具有相同关键字的键值对而可能存在的使用其中一个关键字的校验用信息去校验另一个关键字的取值的情况,进而有助于提升校验结果的准确度。
进一步参考图5,作为对上述各图所示方法的实现,本申请提供了用于输出信息的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例提供的用于输出信息的装置500包括获取单元501、分析单元502和校验单元503。其中,获取单元501被配置成获取目标接口的返回数据;分析单元502被配置成对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集;校验单元503被配置成对于键值对集中的键值对,获取与该键值对中的关键字对应的校验用信息;利用校验用信息校验该键值对中的值是否符合预设条件;响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息。
在本实施例中,用于输出信息的装置500中:获取单元501、分析单元502和校验单元503的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201、步骤202和步骤203的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,上述校验单元503进一步被配置成:响应于确定该键值对中的关键字不属于预设的关键字集合,获取与该键值对中的关键字对应的校验用信息。
在本实施例的一些可选的实现方式中,校验用信息为正则表达式;以及校验用信息通过如下步骤确定:获取目标接口的至少一个历史返回数据包括的、与该键值对中的关键字对应的且符合所述预设条件的值,得到值集;对得到的值集中的值进行字符串分析以确定校验用信息。
在本实施例的一些可选的实现方式中,用于输出信息的装置500还包括:确定单元(图中未示出),被配置成确定键值对集中的键值对的位置标识,其中,位置标识用于表示键值对集中的键值对中的关键字在目标接口的返回数据中的位置。
在本实施例的一些可选的实现方式中,校验单元503进一步被配置成:确定该键值对中的关键字的位置标识作为目标位置标识;获取与目标位置标识对应的、与该键值对中的关键字对应的校验用信息。
在本实施例的一些可选的实现方式中,校验单元503进一步被配置成:输出该键值对中的关键字和该键值对中的关键字的位置标识。
本申请的上述实施例提供的装置,通过获取单元获取目标接口的返回数据;分析单元对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集;校验单元对于键值对集中的键值对,获取与该键值对中的关键字对应的校验用信息;利用校验用信息校验该键值对中的值是否符合预设条件;响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息,从而实现了对接口的返回数据所包括的各个键值对的分别校验,以及在确定键值对不符合预期时,输出相关信息以进行提示。
下面参考图6,其示出了适于用来实现本申请实施例的电子设备的计算机系统600的结构示意图。图6示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本申请的方法中限定的上述功能。
需要说明的是,本申请的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器,包括获取单元、分析单元和校验单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取目标接口的返回数据的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取目标接口的返回数据;对返回数据进行字符串分析以确定返回数据包括的、非嵌套型的键值对,得到键值对集;对于键值对集中的键值对,获取与该键值对中的关键字对应的校验用信息;利用校验用信息校验该键值对中的值是否符合预设条件;响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (14)

1.一种用于输出信息的方法,包括:
获取目标接口的返回数据;
对所述返回数据进行字符串分析以确定所述返回数据包括的、非嵌套型的键值对,得到键值对集;
对于所述键值对集中的键值对,获取与该键值对中的关键字对应的校验用信息;利用所述校验用信息校验该键值对中的值是否符合预设条件;响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息。
2.根据权利要求1所述的方法,其中,所述获取与该键值对中的关键字对应的校验用信息,包括:
响应于确定该键值对中的关键字不属于预设的关键字集合,获取与该键值对中的关键字对应的校验用信息。
3.根据权利要求1所述的方法,其中,所述校验用信息为正则表达式;以及
所述校验用信息通过如下步骤确定:
获取所述目标接口的至少一个历史返回数据包括的、与该键值对中的关键字对应的且符合所述预设条件的值,得到值集;
对得到的值集中的值进行字符串分析以确定所述校验用信息。
4.根据权利要求1-3之一所述的方法,其中,在所述对所述返回数据进行字符串分析以确定所述返回数据包括的、非嵌套型的键值对,得到键值对集之后,所述方法还包括:
确定所述键值对集中的键值对的位置标识,其中,位置标识用于表示所述键值对集中的键值对中的关键字在所述目标接口的返回数据中的位置。
5.根据权利要求4所述的方法,其中,所述获取与该键值对中的关键字对应的校验用信息,包括:
确定该键值对中的关键字的位置标识作为目标位置标识;
获取与所述目标位置标识对应的、与该键值对中的关键字对应的校验用信息。
6.根据权利要求4所述的方法,其中,所述输出该键值对的相关信息,包括:
输出该键值对中的关键字和该键值对中的关键字的位置标识。
7.一种用于输出信息的装置,包括:
获取单元,被配置成获取目标接口的返回数据;
分析单元,被配置成对所述返回数据进行字符串分析以确定所述返回数据包括的、非嵌套型的键值对,得到键值对集;
校验单元,被配置成对于所述键值对集中的键值对,获取与该键值对中的关键字对应的校验用信息;利用所述校验用信息校验该键值对中的值是否符合预设条件;响应于确定该键值对中的值不符合预设条件,输出该键值对的相关信息。
8.根据权利要求7所述的装置,其中,所述校验单元进一步被配置成:
响应于确定该键值对中的关键字不属于预设的关键字集合,获取与该键值对中的关键字对应的校验用信息。
9.根据权利要求7所述的装置,其中,所述校验用信息为正则表达式;以及
所述校验用信息通过如下步骤确定:
获取所述目标接口的至少一个历史返回数据包括的、与该键值对中的关键字对应的且符合所述预设条件的值,得到值集;
对得到的值集中的值进行字符串分析以确定所述校验用信息。
10.根据权利要求7-9之一所述的装置,其中,所述装置还包括:
确定单元,被配置成确定所述键值对集中的键值对的位置标识,其中,位置标识用于表示所述键值对集中的键值对中的关键字在所述目标接口的返回数据中的位置。
11.根据权利要求10所述的装置,其中,所述校验单元进一步被配置成:
确定该键值对中的关键字的位置标识作为目标位置标识;
获取与所述目标位置标识对应的、与该键值对中的关键字对应的校验用信息。
12.根据权利要求10所述的装置,其中,所述校验单元进一步被配置成:
输出该键值对中的关键字和该键值对中的关键字的位置标识。
13.一种电子设备,包括:
一个或多个处理器;
存储装置,其上存储有一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
14.一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN201811485184.XA 2018-12-06 2018-12-06 用于输出信息的方法和装置 Active CN109614327B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811485184.XA CN109614327B (zh) 2018-12-06 2018-12-06 用于输出信息的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811485184.XA CN109614327B (zh) 2018-12-06 2018-12-06 用于输出信息的方法和装置

Publications (2)

Publication Number Publication Date
CN109614327A true CN109614327A (zh) 2019-04-12
CN109614327B CN109614327B (zh) 2022-02-01

Family

ID=66006078

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811485184.XA Active CN109614327B (zh) 2018-12-06 2018-12-06 用于输出信息的方法和装置

Country Status (1)

Country Link
CN (1) CN109614327B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111159482A (zh) * 2019-12-19 2020-05-15 贝壳技术有限公司 数据校验方法及系统
CN111736806A (zh) * 2020-05-14 2020-10-02 广州三七网络科技有限公司 控件注入方法、装置及终端设备
CN112632147A (zh) * 2020-12-11 2021-04-09 邦彦技术股份有限公司 数据差异化比较方法、系统和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105868050A (zh) * 2015-12-29 2016-08-17 乐视网信息技术(北京)股份有限公司 基于json数据的验证方法及装置
CN106708853A (zh) * 2015-11-13 2017-05-24 阿里巴巴集团控股有限公司 数据校验方法和装置
US20180095467A1 (en) * 2006-02-27 2018-04-05 Perrone Robotics, Inc. General purpose robotics operating system with unmanned and autonomous vehicle extensions
CN108345511A (zh) * 2017-01-24 2018-07-31 阿里巴巴集团控股有限公司 一种应用数据校验方法、装置及电子设备
CN108882006A (zh) * 2018-07-03 2018-11-23 武汉斗鱼网络科技有限公司 一种消息格式的转换方法、装置、存储介质及安卓终端

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180095467A1 (en) * 2006-02-27 2018-04-05 Perrone Robotics, Inc. General purpose robotics operating system with unmanned and autonomous vehicle extensions
CN106708853A (zh) * 2015-11-13 2017-05-24 阿里巴巴集团控股有限公司 数据校验方法和装置
CN105868050A (zh) * 2015-12-29 2016-08-17 乐视网信息技术(北京)股份有限公司 基于json数据的验证方法及装置
CN108345511A (zh) * 2017-01-24 2018-07-31 阿里巴巴集团控股有限公司 一种应用数据校验方法、装置及电子设备
CN108882006A (zh) * 2018-07-03 2018-11-23 武汉斗鱼网络科技有限公司 一种消息格式的转换方法、装置、存储介质及安卓终端

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111159482A (zh) * 2019-12-19 2020-05-15 贝壳技术有限公司 数据校验方法及系统
CN111736806A (zh) * 2020-05-14 2020-10-02 广州三七网络科技有限公司 控件注入方法、装置及终端设备
CN112632147A (zh) * 2020-12-11 2021-04-09 邦彦技术股份有限公司 数据差异化比较方法、系统和存储介质
CN112632147B (zh) * 2020-12-11 2023-10-24 邦彦技术股份有限公司 数据差异化比较方法、系统和存储介质

Also Published As

Publication number Publication date
CN109614327B (zh) 2022-02-01

Similar Documents

Publication Publication Date Title
CN108171276B (zh) 用于生成信息的方法和装置
CN108153901A (zh) 基于知识图谱的信息推送方法和装置
CN108459953A (zh) 测试方法和装置
CN108287927B (zh) 用于获取信息的方法及装置
CN108830329A (zh) 图片处理方法和装置
CN109325213A (zh) 用于标注数据的方法和装置
CN108804327A (zh) 一种自动生成测试数据的方法和装置
CN108090351A (zh) 用于处理请求消息的方法和装置
CN109871311A (zh) 一种推荐测试用例的方法和装置
CN109783741A (zh) 用于推送信息的方法和装置
CN109614327A (zh) 用于输出信息的方法和装置
CN109635256A (zh) 用于校验数据的方法和装置
CN109634767A (zh) 用于检测信息的方法和装置
CN108388563A (zh) 信息输出方法和装置
CN109359194A (zh) 用于预测信息类别的方法和装置
CN107590252A (zh) 用于信息交互的方法及装置
CN109002385A (zh) 用于数据流系统的压力测试方法和装置
CN108776692A (zh) 用于处理信息的方法和装置
CN109583389A (zh) 绘本识别方法及装置
CN109255035A (zh) 用于构建知识图谱的方法和装置
CN109284367A (zh) 用于处理文本的方法和装置
CN108959642A (zh) 用于写入信息的方法和装置
CN109614549B (zh) 用于推送信息的方法和装置
CN108182180B (zh) 用于生成信息的方法和装置
CN109064464A (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