一种接口检测流程的设置方法和系统转让专利

申请号 : CN201710066473.5

文献号 : CN106776349B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 丁鹏

申请人 : 武汉斗鱼网络科技有限公司

摘要 :

本发明公开了一种接口检测流程的设置方法和系统,该设置方法包括:添加检测接口的数据,绘制检测接口的检测流程图,检测流程图的逻辑识别以及识别结果的存储。通过一套检测流程来将各个检测接口相连,使得在进行接口检测时,有更强的逻辑性,增加了接口检测的范围。通过将检测接口所需要的复杂逻辑进行可视化转换,使用户使用本发明进行复杂的接口测试的添加时达到可视化的目的,结构清晰,不易出错,只需要按照简单的图形连接就可以达到将接口测试逻辑化的目的。

权利要求 :

1.一种接口检测流程的设置方法,其特征在于,该设置方法包括:

步骤S101,添加待检测接口的URL、接口名称、请求参数以及返回数据模板,流程设置系统对所述请求参数进行合法性验证,并验证返回数据模板的json数据是否正确,在数据添加完成并且验证通过后,流程设置系统根据检测接口的URL生成唯一的ID编号,并保存所述ID编号,该ID编号是MD5字符串;

步骤S102,使用具有绘制权限的账号和密码登录流程设置系统的人机交互界面,流程设置系统根据账号信息从存储单元中读取所存储的检测接口数据,在操作界面中加载所述检测接口数据;流程设置系统对加载的所述待检测接口数据进行解析,获取接口数据相对应的ID编号,并生成与该ID编号对应的图形模块,不同接口对应的图形模块通过不同的ID编号来区分,并将加载的所述待检测接口的URL、接口名称、请求参数以及返回数据模板加载到所述待检测接口所对应的图形模块的模块属性中;在人机交互界面中按照接口检测的逻辑顺序将一个或多个图形模块连接起来,在连接各个图形模块时,流程设置系统根据每个图形模块的属性来判断其所对应的检测接口是否需要从上一检测接口传入参数,如果判断需要传入参数,则在人机交互界面上弹出对话框以提示,需要选择上一检测接口的哪些参数作为传入参数;通过解析上一检测接口的返回数据模板来得到所选择的上一个接口的传入参数,将获得的上一个接口的传入参数放入弹出对话框中,通过在该弹出对话框中选择所需要的传入参数来完成相互连接的检测接口之间的参数传递;

步骤S103,流程设置系统将按照各检测接口之间的逻辑连接关系生成相对应的字符串,该字符串包括检测流程的名称、检测流程所包括的各种单元和各种单元所需的参数、以及各种单元之间的逻辑连接关系;其中所述各种单元包括检测单元和参数单元,检测单元的参数包括检测单元的名称和该检测单元的唯一ID,参数单元的参数包括该参数单元所对应的检测接口的ID编号、请求参数获取的名称以及请求参数的名称。

2.根据权利要求1所述的设置方法,其特征在于:所述图形模块由解析和生成单元进行创建。

3.一种用于权利要求1所述接口检测流程的设置方法的设置系统,其特征在于,该设置系统包括:添加模块,用于添加检测接口的数据;

绘制模块,用于绘制检测接口的检测流程图;

识别和存储模块,用于检测流程图的逻辑识别以及识别结果的存储。

4.根据权利要求3所述的设置系统,其特征在于,所述添加模块具体包括:

添加单元,用于同时添加检测接口的数据包括URL、接口名称、请求参数以及返回数据模板;

验证单元,用于对所述请求参数进行合法性验证,并验证返回数据模板的数据json是否正确;

生成单元,用于在数据添加完成并且验证通过后,根据检测接口的URL生成唯一的ID编号,该ID编号为MD5字符串。

5.根据权利要求3所述的设置系统,其特征在于,所述绘制模块具体包括:

登录和加载单元,使用具有绘制权限的账号和密码登录流程设置系统的人机交互界面,设置系统根据账号信息从存储模块中读取所存储的检测接口数据,并由设置系统在操作界面中加载所述检测接口数据;

解析和生成单元,流程设置系统对加载的所述待检测接口数据进行解析,获取接口数据相对应的ID编号,并生成与该ID编号对应的图形模块,不同接口对应的图形模块通过不同的ID编号来区分,并将加载的所述待检测接口的URL、接口名称、请求参数以及返回数据模板加载到该图形模块的模块属性中;

判断和连接单元,在人机交互界面中按照接口检测的逻辑顺序将一个或多个图形模块连接起来,在连接各个图形模块时,人机交互界面根据每个图形模块的属性来判断其所对应的检测接口是否需要从上一检测接口传入参数,如果判断需要传入参数,则在人机交互界面上弹出对话框以提示,需要选择上一检测接口的哪些参数作为传入参数;

选择单元,通过解析上一检测接口的返回数据模板来得到所选择的上一个接口的传入参数,将获得的上一个接口的传入参数放入弹出对话框中,通过在该弹出对话框中选择所需要的传入参数来完成相互连接的检测接口之间的参数传递。

6.根据权利要求5所述的设置系统,其特征在于:所述图形模块由解析和生成单元进行创建。

7.根据权利要求3所述的设置系统,其特征在于,所述识别和存储模块具体包括:

逻辑识别单元,按照各检测接口之间的逻辑连接关系生成相对应的字符串,该字符串包括检测流程的名称、检测流程所包括的各种单元和各种单元所需的参数、以及各种单元之间的逻辑连接关系;

其中所述各种单元包括检测单元和参数单元,检测单元的参数包括检测单元的名称和该检测单元的唯一ID,参数单元的参数包括该参数单元所对应的检测接口的ID编号、请求参数获取的名称以及请求参数的名称;

存储单元,保存生成的字符串。

说明书 :

一种接口检测流程的设置方法和系统

技术领域

[0001] 本发明涉及数据终端的接口检测领域,尤其涉及一种接口检测流程的设置方法和系统。

背景技术

[0002] 程序接口测试是测试系统组件间接口的一种测试,随着互联网技术的发展,开发的软件项目工程也越来越多,在软件项目工程中接口测试是一项非常重要的测试环节。接口测试主要测试这些软件项目工程(或者理解为软件系统)对外部提供的接口,以验证这些接口的正确性和稳定性。接口测试的重点是要检查数据的交换,具体是通过向服务器传递接口的测试参数,再接收服务器返回的返回结果,通过验证该返回结果的正确性,以完成对接口测试。
[0003] 在现有的分布式接口测试方案中,每次测试只能针对一个接口进行,测试逻辑过于单一性。如果遇上一些需要逻辑、或者需要使用上一个接口的返回数据向下一个接口发送请求的情况,现有技术方案就无法很好的满足要求了。

发明内容

[0004] 本发明的目的在于提供一种接口检测流程的设置方法和系统,通过一套检测流程来将各个检测接口相连,使得在进行接口检测时,有更强的逻辑性,增加了接口检测的范围。在准备阶段,通过将使用可视化流程图的绘制来完成接口检测流程的设置工作,绘制完后,系统将绘制的检测流程逻辑转换为数据,并将该检测流程数据存入数据库中;在接口检测阶段,从数据库中读取检测流程数据,按照制定的检测流程完成检测工作。通过将检测接口所需要的复杂逻辑进行可视化转换,使用户使用本发明进行复杂的接口测试的添加时达到可视化的目的,结构清晰,不易出错,只需要按照简单的图形连接就可以达到将接口测试逻辑化的目的。
[0005] 本发明所采用的技术方案如下:
[0006] 一种接口检测流程的设置方法,其特征在于,该设置方法包括:步骤S101,添加检测接口的数据;步骤S102,绘制检测接口的检测流程图;步骤S103,检测流程图的逻辑识别以及识别结果的存储。
[0007] 优选地,所述添加检测接口的数据具体包括:同时添加检测接口的数据包括URL、接口名称、请求参数以及返回数据模板,其中流程设置系统对所述请求参数进行合法性验证,并验证返回数据模板的数据json是否正确,在数据添加完成并且验证通过后,流程设置系统根据检测接口的URL生成唯一的ID编号,并将所述ID编号保存在存储单元中,该ID编号MD5字符串。
[0008] 优选地,所述绘制检测接口的检测流程图具体包括:使用具有绘制权限的账号和密码登录流程设置系统的人机交互界面,流程设置系统根据账号信息从存储单元中读取所存储的检测接口数据,在操作界面中加载所述检测接口数据;流程设置系统对加载的所述检测接口数据进行解析,获取接口数据相对应的ID编号,并生成与该ID编号对应的图形模块,不同接口对应的图形模块通过不同的ID编号来区分,并将该接口的URL、接口名称、请求参数以及返回数据模板加载到该图形模块的模块属性中;在人机交互界面中按照接口检测的逻辑顺序将一个或多个图形模块连接起来,在连接各个图形模块时,人机交互界面根据每个图形模块的属性来判断其所对应的检测接口是否需要从上一检测接口传入参数,所述传入参数是根据所述请求参数来确定,如果判断需要传入参数,则在人机交互界面上弹出对话框以提示,需要选择上一检测接口的哪些参数作为传入参数;通过解析上一检测接口的返回数据模板来得到上一个接口的参数,将获得的上一个接口的参数放入弹出对话框中,通过在该弹出对话框中选择所需要的传入参数来完成相互连接的检测接口之间的参数传递。
[0009] 优选地,使用基于jquery所开发的图形生成单元生成图形模块。
[0010] 优选地,所述检测流程图的逻辑识别以及识别结果的存储,具体包括:流程设置系统将按照各检测接口之间的关系生成相对应的字符串,该字符串中包含所述流程图中所有的逻辑关系,该字符串包括检测流程的名称、检测流程所包括的各种单元和各种单元所需的参数、以及各种单元之间的逻辑关系;其中所述各种单元包括检测单元和参数单元,检测单元的参数包括检测单元的名称和该检测单元的唯一ID,参数单元的参数包括该参数单元所对应的检测接口的ID编号、请求参数获取的名称以及请求参数的名称。
[0011] 一种接口检测流程的设置系统,其特征在于,该设置系统包括:添加模块,用于添加检测接口的数据;绘制模块,用于绘制检测接口的检测流程图;识别和存储模块,用于检测流程图的逻辑识别以及识别结果的存储。
[0012] 优选地,所述添加模块具体包括:添加单元,用于同时添加检测接口的数据包括URL、接口名称、请求参数以及返回数据模板;验证单元,用于对所述请求参数进行合法性验证,并验证返回数据模板的数据json是否正确;生成单元,用于在数据添加完成并且验证通过后,根据检测接口的URL生成唯一的ID编号,该ID编号MD5字符串。
[0013] 优选地,所述绘制模块具体包括:登陆和加载单元,使用具有绘制权限的账号和密码登录流程设置系统的人机交互界面,设置系统根据账号信息从存储模块中读取所存储的检测接口数据,在操作界面中加载所述检测接口数据;解析和生成单元,流程设置系统对加载的所述检测接口数据进行解析,获取接口数据相对应的ID编号,并生成与该ID编号对应的图形模块,不同接口对应的图形模块通过不同的ID编号来区分,并将该接口的URL、接口名称、请求参数以及返回数据模板加载到该图形模块的模块属性中;判断和连接单元,在人机交互界面中按照接口检测的逻辑顺序将一个或多个图形模块连接起来,在连接各个图形模块时,人机交互界面根据每个图形模块的属性来判断其所对应的检测接口是否需要从上一检测接口传入参数,所述传入参数是根据所述请求参数来确定,如果判断需要传入参数,则在人机交互界面上弹出对话框以提示,需要选择上一检测接口的哪些参数作为传入参数;选择单元,通过解析上一检测接口的返回数据模板来得到上一个接口的参数,将获得的上一个接口的参数放入弹出对话框中,通过在该弹出对话框中选择所需要的传入参数来完成相互连接的检测接口之间的参数传递。
[0014] 优选地,所述获取和生成单元使用jquery来生成图形模块。
[0015] 优选地,所述识别和存储模块具体包括:逻辑识别单元,按照各检测接口之间的关系生成相对应的字符串,该字符串中包含所述流程图中所有的逻辑关系,该字符串包括检测流程的名称、检测流程所包括的各种单元和各种单元所需的参数、以及各种单元之间的逻辑关系;其中所述各种单元包括检测单元和参数单元,检测单元的参数包括检测单元的名称和该检测单元的唯一ID,参数单元的参数包括该参数单元所对应的检测接口的ID编号、请求参数获取的名称以及请求参数的名称;存储单元,保存生成的字符串。
[0016] 本发明的技术方案所能获得的有益效果包括:使用户使用本发明进行复杂的接口测试的添加时达到可视化的目的,结构清晰,不易出错,只需要按照简单的图形连接就可以达到将接口测试逻辑化的目的。

附图说明

[0017] 图1为该接口检测流程设置方法的流程示意图;
[0018] 图2为该接口检测流程设置方法中接口数据添加的流程示意图;
[0019] 图3为该接口检测流程设置方法中流程图绘制的图形模块示意图;
[0020] 图4为该接口检测流程设置方法中流程图绘制的流程示意图;
[0021] 图5为该接口检测流程设置方法所完成的最终流程图;
[0022] 图6为该接口检测流程设置系统的结构框图。

具体实施方式

[0023] 为了更好的说明本发明,现结合具体实施例以及说明书附图对技术方案作进一步的说明。虽然实施例中记载了这些具体的实施方式,然其并非用以限定本发明,任何所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视权利要求书所界定者为准。
[0024] 该接口检测流程设置方法的流程示意图如图1所示,该设置方法由用户在流程设置系统上进行相应的操作来完成。该设置方法主要分为检测接口的数据添加、检测接口的流程图绘制、检测接口的流程图的逻辑识别、逻辑识别结果的存储几个部分。用户添加需要检测的接口,流程设置系统接收到用户所添加的需要检测的一个或多个接口后,对检测的一个或多个接口信息进行解析,将一个或多个接口进行图形化处理,并将图形化处理后的一个或多个接口显示给用户。用户基于显示的一个或多个图形化检测接口进行检测流程图绘制,并将绘制完成的检测流程图提交给流程设置系统。流程设置系统对检测流程图进行解析,生成检测接口流程数据,并将该数据保存在存储单元中。
[0025] 该接口检测流程设置方法中接口数据添加的流程示意图如图2所示,用户在添加接口数据时,需要填写的内容包括:URL、接口名称、请求参数以及返回数据模板,这些数据都是完成接口检测所必须的,因此需要同时填写完成这些内容之后才能完成接口数据的添加。流程设置系统会对用户输入的请求参数进行合法性验证,对用户输入的返回数据模板验证其数据json是否正确。在数据添加完成并且验证通过之后,流程设置系统将会生成一个唯一的ID号,该ID号为根据接口的URL生成的MD5字符串,保存接口数据。用户在绘制检测流程图时,检测流程图中的各个不同检测接口具有不同的ID号,流程设置系统通过该ID号能够找到对应的接口数据,并解析出进行该接口检测时所需的接口数据。完成一个或多个接口数据添加之后,用户可以开始检测接口的流程图绘制。
[0026] 在用户添加完所有需要进行检测的接口后,将根据设定的检测逻辑顺序开始检测接口的流程图绘制,绘制工作在流程设置系统所提供的操作界面上完成,例如web页面,用户使用具有绘制权限的账号和密码登录到流程设置系统上的人机交互界面,流程设置系统根据用户输入的账号信息从存储单元中读取所存储的接口数据,在操作界面中加载接口数据,不同接口的接口数据对应不同的ID号。操作界面使用ajax技术来读取数据库,将前台页面与后台PHP进行交互,请求PHP接口,PHP接口将数据从数据库取出后将返回给前台页面,该过程无需刷新就可以获取到数据库中的数据。
[0027] 在获取到数据之后,流程设置系统首先解析出接口数据对应ID,并生成与该ID对应的图形模块,在生成了图形模块后,将该对应的接口的URL、接口名称、请求参数以及返回数据模板加载到该图形模块的模块属性中。该图形模块为流程图中最小单元,每个图形模块为所对应ID号所表征的检测接口的数据测试单元,通过执行该图形模块来执行对该数据接口的检测。
[0028] 在上述流程图绘制过程中,生成图形模块所使用的是基于jquery所开发的图形生成器,该生成器可以使图形界面数据化,用户在界面绘制出图形后将可以将绘制的图形转换为json对象,通过解析json对象可以得到相对应的流程数据。解析完数据,流程设置系统将等待用户绘制流程图。用户绘制流程图时,用户将一个或多个需要进行检测的图形模块放入人机交互界面中,这些接口系统会在初始化界面时自动从数据库取出,并绘制到界面中。该接口检测流程设置方法中流程图绘制的图形模块示意图如图3所示。
[0029] 用户在人机交互界面中按照接口请求的逻辑将一个或多个图形模块连接起来,形成一套完整的接口逻辑测试,在连接各个图形模块时,人机交互界面会根据每个检测接口的属性来判断当前连接的接口是否需要传入参数,该传入参数是由从数据库中取得该请求参数来决定的,每个请求参数按照键值对存入数据库中,如果判断需要之前接口的返回值作为参数,则弹出对话框让用户选择需要之前接口的哪些参数作为请求值。上一个接口的参数是由解析上一个接口的返回数据模板得到的,每个接口测试的返回数据模板是一个json数据。如果连接该接口时,查询到该接口需要传入参数,则将上一个接口的返回信息模板进行解析,并将所有参数信息放入弹出窗口中,用户通过在该窗口中选择所需要传入的参数来完成接口之间的参数传递。该接口检测流程设置方法中流程图绘制的流程示意图如图4所示。
[0030] 在用户编辑完成了检测接口的流程图后,流程设置系统将按照每个检测接口之间的关系生成一组对应的字符串,该字符串中包含流程图中所有的逻辑关系。
[0031] 该字符串分为三大部分。第一部分为该流程的名称;第二部分为该测试流程的所有测试单元,及每个单元可能需要的参数。在每个单元中包含本单元的id。该接口的类型,区分该单元是接口测试单元还是参数单元。如果该单元是测试单元,则包含测试单元名称,该测试单元的唯一ID,根据此ID可在数据库中查询到该测试接口的具体信息。如果该单元是参数单元,则包含该参数单元所对应的接口ID,请求参数获取的名称,请求参数的名称;第三部分为每个单元之间的关系。其中包含每个测试单元的流程,其中包含连接两个模块的ID。
[0032] 流程设置系统将该图所对应的流程生成json字符串,字符串如下所示:
[0033]
[0034]
[0035]
[0036] 图5为该接口检测流程设置方法所完成的最终流程图。在该图中,第一接口为测试接口1、第二接口为测试接口2,在进行测试接口2的检测时,需要从测试接口1中传入2个参数来完成测试接口2的请求,测试接口2下面有两个图形框,该两个图形框为选择的测试接口1中对应的两个参数,“---”前面的为测试接口2中的请求参数名,后面的为测试接口1中返回信息参数的名称。在进行接口测试时,将通过该请求参数名去取出第一接口中所需要的参数,实现第二接口的检测。该图中连接各个图形框的箭头显示出了接口测试的执行流程顺序。
[0037] 在进行接口检测时,流程设置系统从存储单元中读取出相应的检测流程图信息并进行解析,解析的数据包括该流程所有接口数据;每个接口之间的联系;接口与接口可能存在的参数绑定,即前一个接口请求返回信息中所需要数据的名称与下一个请求接口需要参数名称之间的对应关系。将这些数据保存到数据库中,需要保存流程名称,所需要测试接口模块的ID,各个模块之间链接的数据。用户向流程设置系统发送执行指令,流程设置系统按照检测流程图中的设置来完成接口的检测。
[0038] 图6为该接口检测流程设置系统的结构框图。该接口检测流程的设置系统包括:添加模块,用于添加检测接口的数据;绘制模块,用于绘制检测接口的检测流程图;识别和存储模块,用于检测流程图的逻辑识别以及识别结果的存储。
[0039] 所述添加模块具体包括:添加单元,用于同时添加检测接口的数据包括URL、接口名称、请求参数以及返回数据模板;验证单元,用于对所述请求参数进行合法性验证,并验证返回数据模板的数据json是否正确;生成单元,用于在数据添加完成并且验证通过后,根据检测接口的URL生成唯一的ID编号,该ID编号MD5字符串。
[0040] 所述绘制模块具体包括:登陆和加载单元,使用具有绘制权限的账号和密码登录流程设置系统的人机交互界面,设置系统根据账号信息从存储模块中读取所存储的检测接口数据,在操作界面中加载所述检测接口数据;解析和生成单元,流程设置系统对加载的所述检测接口数据进行解析,获取接口数据相对应的ID编号,并生成与该ID编号对应的图形模块,不同接口对应的图形模块通过不同的ID编号来区分,并将该接口的URL、接口名称、请求参数以及返回数据模板加载到该图形模块的模块属性中;判断和连接单元,在人机交互界面中按照接口检测的逻辑顺序将一个或多个图形模块连接起来,在连接各个图形模块时,人机交互界面根据每个图形模块的属性来判断其所对应的检测接口是否需要从上一检测接口传入参数,所述传入参数是根据所述请求参数来确定,如果判断需要传入参数,则在人机交互界面上弹出对话框以提示,需要选择上一检测接口的哪些参数作为传入参数;选择单元,通过解析上一检测接口的返回数据模板来得到上一个接口的参数,将获得的上一个接口的参数放入弹出对话框中,通过在该弹出对话框中选择所需要的传入参数来完成相互连接的检测接口之间的参数传递。
[0041] 所述获取和生成单元使用jquery来生成图形模块。
[0042] 所述识别和存储模块具体包括:逻辑识别单元,按照各检测接口之间的关系生成相对应的字符串,该字符串中包含所述流程图中所有的逻辑关系,该字符串包括检测流程的名称、检测流程所包括的各种单元和各种单元所需的参数、以及各种单元之间的逻辑关系;其中所述各种单元包括检测单元和参数单元,检测单元的参数包括检测单元的名称和该检测单元的唯一ID,参数单元的参数包括该参数单元所对应的检测接口的ID编号、请求参数获取的名称以及请求参数的名称;存储单元,保存生成的字符串。
[0043] 本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0044] 本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0045] 这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0046] 这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0047] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。