CN109446063A - 接口测试方法、装置、计算机设备和存储介质 - Google Patents
接口测试方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109446063A CN109446063A CN201811085802.1A CN201811085802A CN109446063A CN 109446063 A CN109446063 A CN 109446063A CN 201811085802 A CN201811085802 A CN 201811085802A CN 109446063 A CN109446063 A CN 109446063A
- Authority
- CN
- China
- Prior art keywords
- data
- interface
- test
- acquisition request
- data acquisition
- 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
- 238000010998 test method Methods 0.000 title claims abstract description 21
- 238000012360 testing method Methods 0.000 claims abstract description 213
- 238000013459 approach Methods 0.000 claims abstract description 81
- 238000000034 method Methods 0.000 claims abstract description 23
- 238000004590 computer program Methods 0.000 claims description 26
- 238000001514 detection method Methods 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000012827 research and development Methods 0.000 abstract 1
- 230000003993 interaction Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 241001269238 Data Species 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 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
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)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及研发管理领域,特别涉及一种自动化开关mock挡板的接口测试方法、装置、计算机设备和存储介质。所述方法包括:截获终端发送的数据获取请求,数据获取请求中携带有第一接口标识;检测第一接口标识对应的接口是否返回数据获取请求对应的数据,若否,识别当前环境是否为测试环境;当当前环境为测试环境时,从测试数据库中查询与第一接口标识对应的测试数据的获取路径;当获取路径可用时,根据获取路径获取测试数据返回至终端。采用本方法能够根据数据获取请求的返回结果实现mock挡板的自动开关,更加灵活地启动mock测试,保证接口测试返回数据的准确性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种接口测试更新方法、装置、计算机设备和存储介质。
背景技术
在对接口进行测试时,经常采用mock测试来模拟实际工作环境,mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。设置一个mock挡板实现mock测试的开关,当需要开启mock测试功能时,则开启mock挡板,反之,则关闭该挡板。
传统地,工作人员通过手动开启或关闭mock挡板,实现mock测试功能;然而,手动切换mock挡板的开启状态无法灵活应对实际的测试场景,容易导致测试不准确。
发明内容
基于此,有必要针对上述技术问题,提供一种提高测试准确性的接口测试方法、装置、计算机设备和存储介质。
一种接口测试方法,所述方法包括:
截获终端发送的数据获取请求,所述数据获取请求中携带有第一接口标识;
检测所述第一接口标识对应的接口是否返回所述数据获取请求对应的数据,若否,识别当前环境是否为测试环境;
当确定所述当前环境为测试环境时,从测试数据库中查询与所述第一接口标识对应的测试数据的获取路径;
当确定所述获取路径可用时,根据所述获取路径获取测试数据返回至所述终端。
在其中一个实施例中,所述根据所述获取路径获取测试数据返回至所述终端之前,还包括:
从所述数据获取请求中提取预设字段的关键词;
则所述根据所述获取路径获取测试数据返回至所述终端,包括:
将所述关键词与所述测试数据组合得到组合数据,将所述组合数据返回至所述终端。
在其中一个实施例中,所述检测所述第一接口标识对应的接口是否返回所述数据获取请求对应的数据,包括:
在第二接口上添加对应的目标注解,并创建与所述目标注解对应的拦截切面;
判断所述第一接口标识与所述目标注解对应的第二接口标识是否相同;
当所述第一接口标识与所述目标注解对应的第二接口标识相同时,通过与所述目标注解对应的所述拦截切面检测所述目标注解对应的第二接口是否返回所述数据获取请求对应的数据。
在其中一个实施例中,所述根据所述获取路径获取测试数据返回至所述终端之后,还包括:
根据所述数据获取请求与所获取的测试数据生成测试日志;
保存所述测试日志。
在其中一个实施例中,所述当确定所述当前环境为测试环境时,从测试数据库中查询与所述第一接口标识对应的测试数据的获取路径之前,还包括:
获取样本请求和所述样本请求对应的样本数据;
从所述样本请求提取所述获取路径;
根据所述样本请求与所述样本请求对应的样本数据之间的对应关系,建立所述获取路径和所述样本数据之间的映射关系得到测试数据库。
一种接口测试装置,所述装置包括:
截获模块,用于截获终端发送的数据获取请求,所述数据获取请求中携带有第一接口标识;
检测模块,用于检测所述第一接口标识对应的接口是否返回所述数据获取请求对应的数据,若否,识别当前环境是否为测试环境;
路径获取模块,用于当确定所述当前环境为测试环境时,从测试数据库中查询与所述第一接口标识对应的测试数据的获取路径;
数据返回模块,用于当确定所述获取路径可用时,根据所述获取路径获取测试数据返回至所述终端。
在其中一个实施例中,所述装置还包括:
关键词提取模块,用于从所述数据获取请求中提取预设字段的关键词;
则所述数据返回模块,还用于将所述关键词与所述测试数据组合得到组合数据,将所述组合数据返回至所述终端。
在其中一个实施例中,所述检测模块包括:
注解添加单元,用于在第二接口上添加对应的目标注解,并创建与所述目标注解对应的拦截切面;
切面创建单元,用于判断所述第一接口标识与所述目标注解对应的第二接口标识是否相同;
数据检测单元,用于当所述第一接口标识与所述目标注解对应的第二接口标识相同时,通过与所述目标注解对应的所述拦截切面检测所述目标注解对应的第二接口是否返回所述数据获取请求对应的数据。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
上述接口测试方法、装置、计算机设备和存储介质,当当前的环境为测试环境,且服务器无法根据数据获取请求从对应的接口中获取数据时,则开启mock挡板,从维护好的测试数据库中获取测试数据作为此数据获取请求的返回结果。测试数据库是提前维护好的、存储测试数据的数据库,通过获取路径管理其中存储的测试数据;服务器可根据不同数据获取请求对应的接口,从测试数据库中获取不同的测试数据。上述接口测试方法,根据数据获取请求的返回结果实现mock挡板的自动开关,更加灵活地启动mock测试,服务器启动mock测试时,根据终端的数据获取请求,从维护好的测试数据库中获取不同接口对应的测试数据,保证接口测试返回数据的准确性。
附图说明
图1为一个实施例中接口测试方法的应用场景图;
图2为一个实施例中接口测试方法的流程示意图;
图3为一个实施例中测试数据库的生成方式的流程示意图;
图4为一个实施例中接口测试装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的接口测试方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。终端102向服务器104发送数据获取请求,服务器104获取到此数据获取请求后,当当前的环境为测试环境、且服务器无法根据数据获取请求从对应的接口中获取数据时,则开启mock挡板,从维护好的测试数据库中获取测试数据作为此数据获取请求的返回结果。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种接口测试方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
S202,截获终端发送的数据获取请求,数据获取请求中携带有第一接口标识。
其中,第一接口标识是服务器此数据获取请求对应的数据的存储地址与服务器的接口的信息,每个接口可对应与服务器进行数据交互的不同地址,如数据存储的服务器地址、与服务器通过网络连接的供应商数据库、网站地址等。
具体地,终端向服务器发送数据获取请求,数据获取请求是用于服务器从某一数据接口获取对应的数据的请求;服务器截获到此数据获取请求后,根据数据获取请求中携带的第一接口标识,明确服务器获取数据的接口。
S204,检测第一接口标识对应的接口是否返回数据获取请求对应的数据,若否,识别当前环境是否为测试环境。
具体地,服务器在根据步骤S202中识别出数据获取请求中的第一接口标识后,向此第一接口标识对应的接口请求读取与数据获取请求对应的数据,当此接口未返回对应数据时,则需要检测当前环境是否为测试环境,执行不同的处理方案。
S206,当确定当前环境为测试环境时,从测试数据库中查询与第一接口标识对应的测试数据的获取路径。
其中,测试数据是预存储于测试数据库中的数据,当接口无法返回与数据获取请求对应的数据时,服务器可将此数据作为数据获取请求的返回值,完成终端此次的数据获取操作。
获取路径是服务器在测试数据库中查询测试数据的索引,获取路径可以根据数据获取请求中的第一接口标识和测试数据在数据库中的存储位置生成。
具体地,由于mock测试功能是在测试环境时,由于未接入数据获取请求对应的数据的存储数据库或网址,而对接口进行测试的模拟数据返回,故只有在服务器确认当前环境为测试环境时,才启动下述的步骤。测试数据库是用于存储测试数据的数据库,以获取路径为测试数据的索引。为保证mock测试过程中能够更好地模拟不同接口返回的不同数据,可根据不同接口在测试数据库中存储不同的测试数据;服务器根据第一接口标识和测试数据在数据库中的存储位置生成获取路径,将获取路径作为不同测试数据在测试数据库中的查询索引,建立第一接口标识与获取路径之间的映射关系,服务器可以根据第一接口标识查询到对应的获取路径。
另外,当确定当前环境为非测试环境时,服务器若无法通过接口返回数据获取请求对应的数据,则此次数据调取失败,服务器生成一个失败消息,发送给上述的终端。
S208,当确定获取路径可用时,根据获取路径获取测试数据返回至终端。
具体地,当服务器查询到此第一接口标识对应的获取路径后,需要先确定此路径是否可用,若开关开启,则获取路径可用,服务器可以读取测试数据,发送至数据获取请求对应的终端,完成终端的数据获取操作。
可选地,技术人员可以在获取路径上增加一个开关,来决定是否允许服务器根据获取路径读取对应的测试数据;当开关开启时,则获取路径可用,服务器可以根据获取路径读取测试数据库中的测试数据;当开关关闭时,获取路径不可用,服务器生成一个错误消息发送给终端,此次数据获取失败。
技术人员可以在获取路径中设置一个与第一接口标识相关的类字段,通过类字段来设置开关的开启和关闭,此类字段可以是发送数据获取请求的终端的类型或者第一接口标识对应的接口的类型等;例如,技术人员可以设置只允许公司内部的终端访问服务器时,才可以访问测试数据库。
上述接口测试方法,当确定当前的环境为测试环境时,且服务器无法根据数据获取请求从对应的接口中获取数据时,则开启mock挡板,从维护好的测试数据库中获取测试数据作为此数据获取请求的返回结果。测试数据库是提前维护好的、存储测试数据的数据库,通过获取路径管理其中存储的测试数据;服务器可根据不同数据获取请求对应的接口,从测试数据库中获取不同的测试数据。上述接口测试方法,根据数据获取请求的返回结果实现mock挡板的自动开关,更加灵活地启动mock测试,服务器启动mock测试时,根据终端的数据获取请求,从维护好的测试数据库中获取不同接口对应的测试数据,保证接口测试返回数据的准确性。
在一个实施例中,上述接口测试方法中的步骤S208根据获取路径获取测试数据返回至终端之前,还包括:从数据获取请求中提取预设字段的关键词。则根据获取路径获取测试数据返回至终端,包括:将关键词与测试数据组合得到组合数据,将组合数据返回至终端。
其中,预设字段是用于提取数据获取请求中的关键词设置的查询字段;例如发送终端的信息等。
具体地,终端发送的数据获取请求应该包含发送终端的信息、请求内容和数据存储地址等信息;技术人员在向测试数据库中存储测试数据之前,可以将测试数据中的部分字段设成空字段,在接口测试过程中,由服务器根据从数据获取请求中提取的关键词对空字段进行补充,得到组合数据作为此数据获取请求的返回值。
上述实施例中,能够根据数据获取请求中的信息调整测试数据中的预设字段,使返回的测试数据能够更加符合接口的实际应用场景,提高了接口测试的准确性,也更方便对接口测试中的问题进行纠错。
在一个实施例中,上述接口测试方法中的步骤S204中的检测第一接口标识对应的接口是否返回数据获取请求对应的数据,可以包括:在第二接口上添加对应的目标注解,并创建与目标注解对应的拦截切面;判断第一接口标识与目标注解对应的第二接口标识是否相同;当第一接口标识与目标注解对应的第二接口标识相同时,通过与目标注解对应的拦截切面检测目标注解对应的第二接口是否返回数据获取请求对应的数据。
其中,第二接口是需要监测数据交互的接口,如数据存储的服务器地址、与服务器通过网络连接的供应商数据库、网站地址等。
拦截切面是用于检测数据获取请求是否满足启动mock测试的虚拟拦截装置,可以采用java(一种计算机语言)中的切面类,可以通过AOP(aspect object programming,面向切面编程,就是指对很多功能都有的重复代码抽取,再在运行的时候往业务方法上动态植入"切面类代码")来实现。
目标注解是检测数据获取请求中的第二接口标识的注解;可以先通过java中的Spring框架(一个开放源代码的设计层面框架,解决的是业务逻辑层和其他各层的松耦合问题)来创建注解,然后根据目标接口的信息生成目标注解,目标注解与第二接口一一对应,设置在第二接口上,用于标注第二接口的属性,以便拦截切面检测标注了目标注解的第二接口的数据交互情况。
具体地,服务器可以通过设置拦截切面来检测第一接口标识对应的接口是否返回数据,技术人员先设置一个拦截切面,此拦截切面应包括目标注解,可通过拦截切面监测添加了目标注解的第二接口的数据交互情况,当终端发送的数据获取请求中的第一接口标识与目标注解对应时,服务器可通过拦截切面监测的第一接口获取此数据获取请求对应的数据。
例如,技术人员通过java的Spring框架创建注解,注解中根据需要增加与目标切口相关的字段,即目标注解,供拦截切面使用,并在调用供应商接口上添加该目标注解;然后创建一个切面类,即拦截切面,此切面中的切点包含目标注解,服务器可根据此拦截切面检测包含目标注解的数据交互情况。当服务器获取到终端的数据获取请求后,先检测此数据获取请求是否需要从目标接口调取数据,若需要,则通过拦截切面检测目标接口是否返回对应的数据。若数据获取请求对应的数据需要通过目标接口以外的其他接口获取,则此拦截切面无法对其数据交互情况进行监控。
上述实施例中,通过设置拦截切面来检测第一接口标识对应的接口是否返回数据,对目标接口的数据交互情况进行监控。
在一个实施例中,上述接口测试方法中的步骤S208根据获取路径获取测试数据返回至终端之后,还可以包括:根据数据获取请求与所获取的测试数据生成测试日志;保存测试日志。
其中,测试日志是用于记录执行mock测试的数据获取请求的记录,可以是数据获取请求的名称和返回的测试数据的获取路径结合生成的记录信息。
具体地,当启动上述接口测试方法后,服务器可以将mock测试成功的数据获取请求和对应的测试数据生成测试日志,并将其保存在设定位置中,便于技术人员了解未成功返回数据的接口的测试情况。
上述实施例中,通过测试日志记录执行mock测试的数据获取请求和返回的测试数据,了解mock测试的执行情况。
在一个实施例中,请参见图3,上述接口测试方法中步骤S206中当确定当前环境为测试环境时,从测试数据库中查询与第一接口标识对应的测试数据的获取路径之前,还包括测试数据库的生成方式,包括:
S302,获取样本请求和样本请求对应的样本数据。
其中,样本请求是用于训练测试数据库的数据获取请求,可以是技术人员模拟终端向服务器请求调取不同接口的数据的数据获取请求,也可以是服务器收到的历史数据调取请求。则样本数据是此样本请求被执行mock测试时应返回的数据,可以是设置好的字符串等。
具体地,生成的测试数据库应具备能够根据终端的数据获取请求,从测试数据库中查询到对应的测试数据来作为返回值。故在创建测试数据库时,应根据与实际使用过程中的数据获取请求对应的样本请求,来训练测试数据库,并为样本请求设定对应的样本数据;所以服务器需要先获取样本请求和样本数据。
S304,从样本请求提取获取路径。
具体地,样本请求与实际的数据获取请求相似,故也应携带有数据存储的第一接口标识,服务器从样本请求中提取第一接口标识信息,生成获取路径。
S306,根据样本请求与样本请求对应的样本数据之间的对应关系,建立获取路径和样本数据之间的映射关系得到测试数据库。
具体地,在步骤S304中,由于获取路径是根据样本请求中的第一接口标识生成的,故服务器能够通过样本请求或者测试时的数据获取请求中的第一接口标识查询到对应的获取路径。再建立获取路径和样本数据之间的映射关系,即可通过获取路径查询到存储在测试数据库中的测试数据。
上述实施例中,通过与数据获取请求具有同样特点的样本请求,提取获取路径,并建立以获取路径为索引的测试数据库,使得服务器可以通过数据获取请求中的第一接口标识从测试数据库中查询到对应的测试数据。
应该理解的是,虽然图2至图3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2至图3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种接口测试装置,包括:截获模块100、检测模块200、路径获取模块300和数据返回模块400,其中:
截获模块100,用于截获终端发送的数据获取请求,数据获取请求中携带有第一接口标识。
检测模块200,用于检测第一接口标识对应的接口是否返回数据获取请求对应的数据,若否,识别当前环境是否为测试环境。
路径获取模块300,用于当确定当前环境为测试环境时,从测试数据库中查询与第一接口标识对应的测试数据的获取路径。
数据返回模块400,用于当确定获取路径可用时,根据获取路径获取测试数据返回至终端。
在一个实施例中,上述接口测试装置还可以包括:
关键词提取模块,用于从数据获取请求中提取预设字段的关键词。
则数据返回模块,还用于将关键词与测试数据组合得到组合数据,将组合数据返回至终端。
在一个实施例中,上述接口测试装置中的检测模块200可以包括:
注解添加单元,用于在第二接口上添加对应的目标注解,并创建与目标注解对应的拦截切面。
切面创建单元,用于判断第一接口标识与目标注解对应的第二接口标识是否相同。
数据检测单元,用于当第一接口标识与目标注解对应的第二接口标识相同时,通过与目标注解对应的拦截切面检测目标注解对应的第二接口是否返回数据获取请求对应的数据。
在一个实施例中,上述接口测试装置还可以包括:
日志生成模块,用于根据数据获取请求与所获取的测试数据生成测试日志。
存储模块,用于保存测试日志。
在一个实施例中,上述接口测试装置还可以包括:
样本获取模块,用于获取样本请求和样本请求对应的样本数据。
路径提取模块,用于从样本请求提取获取路径。
数据库建立模块,用于根据样本请求与样本请求对应的样本数据之间的对应关系,建立获取路径和样本数据之间的映射关系得到测试数据库。
关于接口测试装置的具体限定可以参见上文中对于知识库联动更新方法的限定,在此不再赘述。上述接口测试装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储接口测试数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种接口测试方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:截获终端发送的数据获取请求,数据获取请求中携带有第一接口标识;检测第一接口标识对应的接口是否返回数据获取请求对应的数据,若否,识别当前环境是否为测试环境;当确定当前环境为测试环境时,从测试数据库中查询与第一接口标识对应的测试数据的获取路径;当确定获取路径可用时,根据获取路径获取测试数据返回至终端。
在一个实施例中,处理器执行计算机程序时实现的根据获取路径获取测试数据返回至终端之前,还包括:从数据获取请求中提取预设字段的关键词;则处理器执行计算机程序时实现的根据获取路径获取测试数据返回至终端,包括:将关键词与测试数据组合得到组合数据,将组合数据返回至终端。
在一个实施例中,处理器执行计算机程序时实现的检测第一接口标识对应的接口是否返回数据获取请求对应的数据,包括:在第二接口上添加对应的目标注解,并创建与目标注解对应的拦截切面;判断第一接口标识与目标注解对应的第二接口标识是否相同;当第一接口标识与目标注解对应的第二接口标识相同时,通过与目标注解对应的拦截切面检测目标注解对应的第二接口是否返回数据获取请求对应的数据。
在一个实施例中,处理器执行计算机程序时实现的根据获取路径获取测试数据返回至终端之后,还包括:根据数据获取请求与所获取的测试数据生成测试日志;保存测试日志。
在一个实施例中,处理器执行计算机程序时实现的当确定当前环境为测试环境时,从测试数据库中查询与第一接口标识对应的测试数据的获取路径之前,还包括:获取样本请求和样本请求对应的样本数据;从样本请求提取获取路径;根据样本请求与样本请求对应的样本数据之间的对应关系,建立获取路径和样本数据之间的映射关系得到测试数据库。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:截获终端发送的数据获取请求,数据获取请求中携带有第一接口标识;检测第一接口标识对应的接口是否返回数据获取请求对应的数据,若否,识别当前环境是否为测试环境;当确定当前环境为测试环境时,从测试数据库中查询与第一接口标识对应的测试数据的获取路径;当确定获取路径可用时,根据获取路径获取测试数据返回至终端。
在一个实施例中,计算机程序被处理器执行时实现的根据获取路径获取测试数据返回至终端之前,还包括:从数据获取请求中提取预设字段的关键词;则计算机程序被处理器执行时实现的根据获取路径获取测试数据返回至终端,包括:将关键词与测试数据组合得到组合数据,将组合数据返回至终端。
在一个实施例中,计算机程序被处理器执行时实现的检测第一接口标识对应的接口是否返回数据获取请求对应的数据,包括:在第二接口上添加对应的目标注解,并创建与目标注解对应的拦截切面;判断第一接口标识与目标注解对应的第二接口标识是否相同;当第一接口标识与目标注解对应的第二接口标识相同时,通过与目标注解对应的拦截切面检测目标注解对应的第二接口是否返回数据获取请求对应的数据。
在一个实施例中,计算机程序被处理器执行时实现的根据获取路径获取测试数据返回至终端之后,还包括:根据数据获取请求与所获取的测试数据生成测试日志;保存测试日志。
在一个实施例中,计算机程序被处理器执行时实现的当确定当前环境为测试环境时,从测试数据库中查询与第一接口标识对应的测试数据的获取路径之前,还包括:获取样本请求和样本请求对应的样本数据;从样本请求提取获取路径;根据样本请求与样本请求对应的样本数据之间的对应关系,建立获取路径和样本数据之间的映射关系得到测试数据库。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种接口测试方法,所述方法包括:
截获终端发送的数据获取请求,所述数据获取请求中携带有第一接口标识;
检测所述第一接口标识对应的接口是否返回所述数据获取请求对应的数据,若否,识别当前环境是否为测试环境;
当确定所述当前环境为测试环境时,从测试数据库中查询与所述第一接口标识对应的测试数据的获取路径;
当确定所述获取路径可用时,根据所述获取路径获取测试数据返回至所述终端。
2.根据权利要求1所述的方法,其特征在于,所述根据所述获取路径获取测试数据返回至所述终端之前,还包括:
从所述数据获取请求中提取预设字段的关键词;
则所述根据所述获取路径获取测试数据返回至所述终端,包括:
将所述关键词与所述测试数据组合得到组合数据,将所述组合数据返回至所述终端。
3.根据权利要求1所述的方法,其特征在于,所述检测所述第一接口标识对应的接口是否返回所述数据获取请求对应的数据,包括:
在第二接口上添加对应的目标注解,并创建与所述目标注解对应的拦截切面;
判断所述第一接口标识与所述目标注解对应的第二接口标识是否相同;
当所述第一接口标识与所述目标注解对应的第二接口标识相同时,通过与所述目标注解对应的所述拦截切面检测所述目标注解对应的第二接口是否返回所述数据获取请求对应的数据。
4.根据权利要求1至3任一所述的方法,其特征在于,所述根据所述获取路径获取测试数据返回至所述终端之后,还包括:
根据所述数据获取请求与所获取的测试数据生成测试日志;
保存所述测试日志。
5.根据权利要求1所述的方法,其特征在于,所述当确定所述当前环境为测试环境时,从测试数据库中查询与所述第一接口标识对应的测试数据的获取路径之前,还包括:
获取样本请求和所述样本请求对应的样本数据;
从所述样本请求提取所述获取路径;
根据所述样本请求与所述样本请求对应的样本数据之间的对应关系,建立所述获取路径和所述样本数据之间的映射关系得到测试数据库。
6.一种接口测试装置,其特征在于,所述装置包括:
截获模块,用于截获终端发送的数据获取请求,所述数据获取请求中携带有第一接口标识;
检测模块,用于检测所述第一接口标识对应的接口是否返回所述数据获取请求对应的数据,若否,识别当前环境是否为测试环境;
路径获取模块,用于当确定所述当前环境为测试环境时,从测试数据库中查询与所述第一接口标识对应的测试数据的获取路径;
数据返回模块,用于当确定所述获取路径可用时,根据所述获取路径获取测试数据返回至所述终端。
7.根据权利要求6所述的方法,其特征在于,所述装置还包括:
关键词提取模块,用于从所述数据获取请求中提取预设字段的关键词;
则所述数据返回模块,还用于将所述关键词与所述测试数据组合得到组合数据,将所述组合数据返回至所述终端。
8.根据权利要求6所述的方法,其特征在于,所述检测模块包括:
注解添加单元,用于在第二接口上添加对应的目标注解,并创建与所述目标注解对应的拦截切面;
切面创建单元,用于判断所述第一接口标识与所述目标注解对应的第二接口标识是否相同;
数据检测单元,用于当所述第一接口标识与所述目标注解对应的第二接口标识相同时,通过与所述目标注解对应的所述拦截切面检测所述目标注解对应的第二接口是否返回所述数据获取请求对应的数据。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811085802.1A CN109446063A (zh) | 2018-09-18 | 2018-09-18 | 接口测试方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811085802.1A CN109446063A (zh) | 2018-09-18 | 2018-09-18 | 接口测试方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109446063A true CN109446063A (zh) | 2019-03-08 |
Family
ID=65530450
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811085802.1A Pending CN109446063A (zh) | 2018-09-18 | 2018-09-18 | 接口测试方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109446063A (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110109656A (zh) * | 2019-03-25 | 2019-08-09 | 平安科技(深圳)有限公司 | 接口模拟方法、装置、计算机设备和存储介质 |
CN110147326A (zh) * | 2019-05-23 | 2019-08-20 | 四川新网银行股份有限公司 | 基于Redis数据库的微服务自动化测试方法 |
CN110502224A (zh) * | 2019-08-22 | 2019-11-26 | 深圳前海环融联易信息科技服务有限公司 | 基于http请求的接口模拟方法、装置和计算机设备 |
CN110609792A (zh) * | 2019-09-10 | 2019-12-24 | 浙江大搜车软件技术有限公司 | 接口测试方法、装置、计算机设备和存储介质 |
CN111045650A (zh) * | 2019-12-12 | 2020-04-21 | 深圳前海环融联易信息科技服务有限公司 | Mocker联调工具的设计方法、装置及计算机设备 |
CN111078477A (zh) * | 2019-11-13 | 2020-04-28 | 航天信息股份有限公司 | 接口测试的方法、装置、存储介质和电子设备 |
CN111078562A (zh) * | 2019-12-18 | 2020-04-28 | 广州唯品会研究院有限公司 | 接口测试方法、终端设备及计算机可读存储介质 |
CN111209202A (zh) * | 2020-01-06 | 2020-05-29 | 北京字节跳动网络技术有限公司 | 终端应用测试方法和装置 |
CN111258885A (zh) * | 2020-01-08 | 2020-06-09 | 聚好看科技股份有限公司 | 一种单元测试方法及*** |
CN111309624A (zh) * | 2020-03-02 | 2020-06-19 | 北京创鑫旅程网络技术有限公司 | 测试方法、装置、设备及存储介质 |
CN111427796A (zh) * | 2020-04-12 | 2020-07-17 | 中信银行股份有限公司 | ***测试方法、装置及电子设备 |
CN112118184A (zh) * | 2020-08-06 | 2020-12-22 | 北京健康之家科技有限公司 | 网关自动路由方法及装置、存储介质、计算机设备 |
CN112667501A (zh) * | 2020-12-23 | 2021-04-16 | 平安普惠企业管理有限公司 | 基于自动化挡板的链路测试方法、装置及相关设备 |
CN112948272A (zh) * | 2021-04-16 | 2021-06-11 | 西安京迅递供应链科技有限公司 | 基于生产环境的数据测试***功能方法、装置及相关设备 |
CN113411234A (zh) * | 2021-06-17 | 2021-09-17 | 杭州遥望网络科技有限公司 | 一种接口测试方法、***及计算机可读存储介质 |
CN113760719A (zh) * | 2020-11-25 | 2021-12-07 | 北京京东振世信息技术有限公司 | 一种接口测试方法和工具 |
CN113806069A (zh) * | 2021-08-05 | 2021-12-17 | 广东核电合营有限公司 | 一种核电站***交互方法、装置、******及存储介质 |
US11334471B1 (en) | 2020-12-02 | 2022-05-17 | UiPath Inc. | Mocking robotic process automation (RPA) activities for workflow testing |
CN115344502A (zh) * | 2022-10-18 | 2022-11-15 | 中建电子商务有限责任公司 | 基于真实数据自动生成mock数据及自动加载的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107179984A (zh) * | 2016-03-10 | 2017-09-19 | 北京京东尚科信息技术有限公司 | 一种接口mock方法及接口测试方法 |
US20170300402A1 (en) * | 2016-04-19 | 2017-10-19 | Sap Se | Mock server and extensions for application testing |
CN107329890A (zh) * | 2017-06-06 | 2017-11-07 | 北京金山安全软件有限公司 | 基于Mock的测试方法、装置及服务器 |
WO2018036273A1 (zh) * | 2016-08-22 | 2018-03-01 | 上海壹账通金融科技有限公司 | 模拟测试方法、服务器、设备及计算机可读存储介质 |
US9959198B1 (en) * | 2016-05-26 | 2018-05-01 | Google Llc | Simulated testing of API |
CN108427631A (zh) * | 2017-02-14 | 2018-08-21 | 北京京东尚科信息技术有限公司 | 一种应用测试***、方法、电子设备和可读存储介质 |
-
2018
- 2018-09-18 CN CN201811085802.1A patent/CN109446063A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107179984A (zh) * | 2016-03-10 | 2017-09-19 | 北京京东尚科信息技术有限公司 | 一种接口mock方法及接口测试方法 |
US20170300402A1 (en) * | 2016-04-19 | 2017-10-19 | Sap Se | Mock server and extensions for application testing |
US9959198B1 (en) * | 2016-05-26 | 2018-05-01 | Google Llc | Simulated testing of API |
WO2018036273A1 (zh) * | 2016-08-22 | 2018-03-01 | 上海壹账通金融科技有限公司 | 模拟测试方法、服务器、设备及计算机可读存储介质 |
CN108427631A (zh) * | 2017-02-14 | 2018-08-21 | 北京京东尚科信息技术有限公司 | 一种应用测试***、方法、电子设备和可读存储介质 |
CN107329890A (zh) * | 2017-06-06 | 2017-11-07 | 北京金山安全软件有限公司 | 基于Mock的测试方法、装置及服务器 |
Non-Patent Citations (1)
Title |
---|
小程故事多: "跟着小程学微服务-Mock自动化***的原理及实现", 《HTTPS://WWW.JIANSHU.COM/P/A6283CD64759》 * |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020192141A1 (zh) * | 2019-03-25 | 2020-10-01 | 平安科技(深圳)有限公司 | 接口模拟方法、装置、计算机设备和存储介质 |
CN110109656A (zh) * | 2019-03-25 | 2019-08-09 | 平安科技(深圳)有限公司 | 接口模拟方法、装置、计算机设备和存储介质 |
CN110147326A (zh) * | 2019-05-23 | 2019-08-20 | 四川新网银行股份有限公司 | 基于Redis数据库的微服务自动化测试方法 |
CN110502224A (zh) * | 2019-08-22 | 2019-11-26 | 深圳前海环融联易信息科技服务有限公司 | 基于http请求的接口模拟方法、装置和计算机设备 |
CN110609792A (zh) * | 2019-09-10 | 2019-12-24 | 浙江大搜车软件技术有限公司 | 接口测试方法、装置、计算机设备和存储介质 |
CN111078477A (zh) * | 2019-11-13 | 2020-04-28 | 航天信息股份有限公司 | 接口测试的方法、装置、存储介质和电子设备 |
CN111045650A (zh) * | 2019-12-12 | 2020-04-21 | 深圳前海环融联易信息科技服务有限公司 | Mocker联调工具的设计方法、装置及计算机设备 |
CN111078562A (zh) * | 2019-12-18 | 2020-04-28 | 广州唯品会研究院有限公司 | 接口测试方法、终端设备及计算机可读存储介质 |
CN111078562B (zh) * | 2019-12-18 | 2024-01-16 | 广州品唯软件有限公司 | 接口测试方法、终端设备及计算机可读存储介质 |
CN111209202A (zh) * | 2020-01-06 | 2020-05-29 | 北京字节跳动网络技术有限公司 | 终端应用测试方法和装置 |
CN111258885A (zh) * | 2020-01-08 | 2020-06-09 | 聚好看科技股份有限公司 | 一种单元测试方法及*** |
CN111258885B (zh) * | 2020-01-08 | 2023-09-15 | 聚好看科技股份有限公司 | 一种单元测试方法及*** |
CN111309624A (zh) * | 2020-03-02 | 2020-06-19 | 北京创鑫旅程网络技术有限公司 | 测试方法、装置、设备及存储介质 |
CN111309624B (zh) * | 2020-03-02 | 2023-07-11 | 北京创鑫旅程网络技术有限公司 | 测试方法、装置、设备及存储介质 |
CN111427796A (zh) * | 2020-04-12 | 2020-07-17 | 中信银行股份有限公司 | ***测试方法、装置及电子设备 |
CN112118184A (zh) * | 2020-08-06 | 2020-12-22 | 北京健康之家科技有限公司 | 网关自动路由方法及装置、存储介质、计算机设备 |
CN113760719A (zh) * | 2020-11-25 | 2021-12-07 | 北京京东振世信息技术有限公司 | 一种接口测试方法和工具 |
US11334471B1 (en) | 2020-12-02 | 2022-05-17 | UiPath Inc. | Mocking robotic process automation (RPA) activities for workflow testing |
CN112667501A (zh) * | 2020-12-23 | 2021-04-16 | 平安普惠企业管理有限公司 | 基于自动化挡板的链路测试方法、装置及相关设备 |
CN112948272A (zh) * | 2021-04-16 | 2021-06-11 | 西安京迅递供应链科技有限公司 | 基于生产环境的数据测试***功能方法、装置及相关设备 |
CN113411234B (zh) * | 2021-06-17 | 2022-08-16 | 杭州遥望网络科技有限公司 | 一种接口测试方法、***及计算机可读存储介质 |
CN113411234A (zh) * | 2021-06-17 | 2021-09-17 | 杭州遥望网络科技有限公司 | 一种接口测试方法、***及计算机可读存储介质 |
CN113806069A (zh) * | 2021-08-05 | 2021-12-17 | 广东核电合营有限公司 | 一种核电站***交互方法、装置、******及存储介质 |
CN113806069B (zh) * | 2021-08-05 | 2024-04-05 | 广东核电合营有限公司 | 一种核电站***交互方法、装置、******及存储介质 |
CN115344502A (zh) * | 2022-10-18 | 2022-11-15 | 中建电子商务有限责任公司 | 基于真实数据自动生成mock数据及自动加载的方法 |
CN115344502B (zh) * | 2022-10-18 | 2023-03-10 | 中建电子商务有限责任公司 | 基于真实数据自动生成mock数据及自动加载的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109446063A (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN108268375A (zh) | 应用程序测试方法、装置、计算机设备和存储介质 | |
CN109446068B (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN110290212B (zh) | 服务调用记录方法、装置、计算机设备和存储介质 | |
CN109670049A (zh) | 图谱路径查询方法、装置、计算机设备和存储介质 | |
CN108920354A (zh) | 埋点管理方法、装置、计算机设备和存储介质 | |
CN108427613A (zh) | 异常接口定位方法、装置、计算机设备和存储介质 | |
CN110008117A (zh) | 页面测试方法、装置、计算机设备和存储介质 | |
CN109586948A (zh) | 更新***配置数据的方法、装置、计算机设备和存储介质 | |
CN108932295A (zh) | 主数据库切换控制方法、装置、计算机设备和存储介质 | |
CN105095062A (zh) | 应用程序测试方法及*** | |
CN109558404A (zh) | 数据存储方法、装置、计算机设备和存储介质 | |
CN104346265A (zh) | 终端设备及其日志信息的获取方法和装置 | |
CN108848000A (zh) | 网络请求测试方法、装置、计算机设备和存储介质 | |
CN109542529A (zh) | 基于函数名称的埋点方法、装置、计算机设备及存储介质 | |
CN109144799A (zh) | 一体化测试方法、装置、计算机设备和存储介质 | |
CN110008255A (zh) | 业务数据分析方法、装置、计算机设备和存储介质 | |
CN109542635A (zh) | 配置信息更新方法、装置、计算机设备和存储介质 | |
CN108306864A (zh) | 网络数据检测方法、装置、计算机设备和存储介质 | |
CN110489421A (zh) | 数据存储方法、装置、计算机可读存储介质和计算机设备 | |
CN110347374B (zh) | 一种富客户端业务服务封装和调用***、方法和装置 | |
CN108400978A (zh) | 漏洞检测方法、装置、计算机设备和存储介质 | |
CN109408374A (zh) | 应用程序异常远程定位方法、***、计算机设备和介质 | |
CN109408370A (zh) | 接口测试文件生成方法、装置、计算机设备和存储介质 | |
CN110493064A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190308 |
|
RJ01 | Rejection of invention patent application after publication |