CN111240653A - 接口文档生成方法、装置及可读存储介质 - Google Patents
接口文档生成方法、装置及可读存储介质 Download PDFInfo
- Publication number
- CN111240653A CN111240653A CN201911418878.6A CN201911418878A CN111240653A CN 111240653 A CN111240653 A CN 111240653A CN 201911418878 A CN201911418878 A CN 201911418878A CN 111240653 A CN111240653 A CN 111240653A
- Authority
- CN
- China
- Prior art keywords
- interface
- identifier
- target
- target service
- version
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 238000004590 computer program Methods 0.000 claims description 19
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/73—Program documentation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种接口文档生成方法、装置及可读存储介质。本发明接口文档生成方法,包括:获取第一目标服务的数据包,数据包包括第一目标服务的所有接口对应的类文件,一个类文件中包括至少一个接口,解析各类文件,以获得各类文件中包括的至少一个接口的接口代码,对各类文件中包括的接口代码提取接口类信息,以根据接口类信息生成第一目标服务的各接口对应的第一接口文档。因此,无需人工手动编写接口文档,从而可以实现自动生成接口文档,省时省力,并且避免人工手动编写接口文档时容易出错的问题。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种接口文档生成方法、装置及可读存储介质。
背景技术
在服务的开发过程中,通常需要对服务对应的代码进行测试,进行代码测试时需要依据接口文档对服务对应的代码进行测试。
目前主要是由开发人员根据编写服务对应的代码时所应用到的类名、方法名、服务名等信息编写接口文档。由于代码中涉及的接口可能为多个,在接口存在多个的情况下,就需要针对每个接口都要编写一个对应的接口文档,因此,人工手动编写接口文档造成人力成本高、耗时长、效率低且容易出错的问题。
发明内容
本发明实施例提供一种接口文档生成方法、装置及可读存储介质,以解决目前人工手动编写接口文档造成人力成本高、耗时长、效率低且容易出错的问题。
本发明实施例的第一方面,提供了一种接口文档生成方法,包括:
获取第一目标服务的数据包,其中,所述数据包包括所述第一目标服务的所有接口对应的类文件,一个所述类文件中包括至少一个所述接口;
解析各所述类文件,以获得各所述类文件中包括的所述至少一个所述接口的接口代码;
对各所述类文件中包括的接口代码提取接口类信息,以根据所述接口类信息生成所述第一目标服务的各所述接口对应的第一接口文档。
本发明实施例的第二方面,提供了一种接口文档生成装置,设置于服务器,包括:
第一获取模块,用于获取第一目标服务的数据包,其中,所述数据包包括所述第一目标服务的所有接口对应的类文件,一个所述类文件中包括至少一个所述接口;
解析模块,用于解析各所述类文件,以获得各所述类文件中包括所述至少一个所述接口的的接口代码;
生成模块,用于对各所述类文件中包括的接口代码提取接口类信息,以根据所述接口类信息生成所述第一目标服务的各所述接口对应的第一接口文档。
本发明实施例的第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现上述所述的接口文档生成方法的步骤。
本发明的第四方面,提供了一种接口文档生成装置,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述所述的接口文档生成方法的步骤。
针对在先技术,本发明具备如下优点:
本发明实施例提供的接口文档生成方法,通过获取第一目标服务的数据包,数据包包括第一目标服务的所有接口对应的类文件,一个类文件中包括至少一个接口,解析各类文件,以获得各类文件中包括的所述至少一个所述接口的接口代码,对各类文件中包括的接口代码提取接口类信息,以根据所述接口类信息生成第一目标服务的各接口对应的第一接口文档。因此,无需人工手动编写接口文档,从而可以实现自动生成接口文档,省时省力,并且避免人工手动编写接口文档时容易出错的问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例提供的一种接口文档生成方法的步骤流程图;
图2为本发明实施例提供的另一种接口文档生成方法的步骤流程图;
图3为本发明实施例提供的一种将生成的接口文档进行显示的步骤流程图;
图4为本发明实施例提供的一种接口文档生成装置的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
应当理解,此处所描述的具体实施例仅用以解释本发明,仅仅是本发明一部分实施例,而不是全部的实施例,并不用于限定本发明。
参照图1,图1为本发明实施例提供的一种接口文档生成方法的步骤流程图,本实施例的接口文档生成方法适用于无需人工手动编写接口文档的情况。该方法可以执行于服务器,本实施例的方法包括如下步骤:
步骤101、获取第一目标服务的数据包,其中,数据包包括第一目标服务的所有接口对应的类文件,一个类文件中包括至少一接口。
其中,数据包可以为JAR包,JAR(Java归档,Java ARchive)是一种文件格式,可将多个文件合成一个文件,例如用户可将多个类文件(以.class为后缀的文件绑定到JAR文件中,也即形成一个JAR包。一个数据包中可以包括一个类文件或多个类文件,一个类文件中可以包括一个或多个接口。例如一个类(class)里如果定义了三个方法,每个方法有各自的方法名,则根据该类的类名和一个方法名可以唯一定义一个接口,该类中共有三个接口,也即该类对应的类文件中包括三个接口。如果该类里只有一个方法,则该类对应的类文件中只包括一个接口。需要说明的是,第一目标服务可以为远程过程调用(RPC,RemoteProcedure Call)服务,第一目标服务的接口可以为RPC接口。
步骤102、解析各类文件,以获得各类文件中包括的至少一个接口的接口代码。
步骤103、对各类文件中包括的接口代码提取接口类信息,以根据接口类信息生成第一目标服务的各接口对应的第一接口文档。
其中,每个接口对应一个第一接口文档,每个接口对应的第一接口文档不同。
生成的接口文档中例如包括接口的描述信息、接口对应的接口类的类名、方法名、方法名对应的方法的输入参数、方法的返回参数、版本标识、以及与服务标识和版本标识都对应的端口标识和地址标识。其中,该描述信息表示对接口对应的接口类的注释,例如描述信息为“根据城市A的ID获取城市简单信息,返回simple”,输入参数例如为字段名、类型,返回参数例如为城市名称、城市标识等,地址标识可以为互联网协议(IP,InternetProtocol)地址。字段名例如为cityIdSet,类型为Long。
本实施例提供的接口文档生成方法,通过获取第一目标服务的数据包,数据包包括第一目标服务的所有接口对应的类文件,一个类文件中包括至少一个接口,解析各类文件,以获得各类文件中包括的至少一个接口的接口代码,对各类文件中包括的接口代码提取接口类信息,以根据接口类信息生成第一目标服务的各接口对应的第一接口文档。因此,无需人工手动编写接口文档,从而可以实现自动生成接口文档,省时省力,并且避免人工手动编写接口文档时容易出错的问题。
参照图2,图2为本发明实施例提供的另一种接口文档生成方法的步骤流程图,该方法包括如下步骤:
步骤201、接收终端发送的请求消息。
其中,请求消息中包括第一目标服务的第一目标服务标识、第一目标服务的第一版本标识、以及与第一目标服务标识和第一版本标识都对应的存储地址。
步骤202、从代码服务器的存储地址,获取与第一目标服务标识和第一版本标识都对应的第一目标服务的数据包。
步骤203、解析各类文件,以获得各类文件中包括的至少一个接口的接口代码。
步骤204、对各类文件中包括的接口代码提取接口类信息,以根据接口类信息生成第一目标服务的各接口对应的第一接口文档。
其中,对各类文件中包括的接口代码提取接口类信息时,可以依据语法树对各类文件中包括的接口代码提取接口类信息。接口类信息包括类名、方法名、第一目标服务标识、方法名对应的方法的输入参数、方法的返回参数、第一版本标识、以及与第一目标服务标识和第一版本标识都对应的端口标识和地址标识,第一版本标识为第一目标服务的第一版本的标识。地址标识可以为IP地址。
需要说明的是,由于一个类名和一个方法名可以唯一的确定一个接口,因此可以分析该类文件中包括的接口代码,获得该类文件中包括的接口代码中的接口类信息,从而可以确定该类文件中包括的每个接口的信息,进而根据每个接口的信息,生成与第一目标服务的第一版本的各接口对应的第一接口文档。接口的信息例如包括与该接口对应的方法的输入参数、返回参数、第一目标服务的版本标识、端口标识、地址标识等信息。
步骤205、将与第一目标服务标识、第一版本标识、以及接口的接口标识都关联的第一接口文档存储在数据库中。
其中,在生成第一接口文档后,即可以将第一接口文档存储在数据库中,并且,存储的第一接口文档与第一目标服务标识、第一版本标识、以及接口的接口标识都关联,从而可以方便后续根据用户选择的服务标识、版本标识、接口标识查找与用户选择的服务标识、版本标识、接口标识都关联的接口文档。
例如,针对步骤204和步骤205,如下表1所示,第一目标服务标识为服务1,服务1的第一版本标识为版本1,版本1的各接口的接口标识包括接口A和接口B,与服务1、版本1和接口A都关联的第一接口文档为接口文档A,与服务1、版本1和接口B都关联的第一接口文档为接口文档B。
表1
需要说明的是,如果在步骤201中,请求消息中包括的第一目标服务为服务1、服务1的第一版本标识为版本2、以及与服务1和版本2都对应的存储地址,则通过步骤202从该存储地址获取服务1的版本2的数据包,并通过步骤203至步骤204,生成服务1的版本2的各接口对应的第一接口文档。
步骤206、每间隔预设时间对代码服务器上存储的第一目标服务的数据包进行扫描,以根据数据包对应的时间信息,判断数据包是否发生更新。
步骤207、在确定数据包发生更新的情况下,从代码服务器获取更新后的数据包。
步骤208、对更新后的数据包进行分析,以确定目标接口。
其中,目标接口包括更新后的数据包中的新增类文件对应的接口和/或更新后的数据包中发生变更的原类文件对应的接口。
目标接口可以只包括新增类文件对应的接口,或者,目标接口只包括发生变更的原类文件对应的接口,或者,目标接口包括新增类文件对应的接口和原类文件对应的接口。原类文件指更新数据包前的数据包中包括的类文件。例如对原类文件中的某个接口的接口代码进行了更改,则该接口为目标接口。
步骤209、对目标接口的接口代码提取接口类信息,以根据目标接口的接口代码对应的接口类信息生成与目标接口对应的第二接口文档。
其中,从目标接口的接口代码中提取的接口类信息即为目标接口的接口代码对应的接口类信息。需要说明的是,由于第一目标服务的数据包存在被更新的情况。例如,更新数据包中的某个类文件,或者在数据包中新增类文件,则第一目标服务的数据包被更新。为了避免数据包中的类文件更新后,接口文档未被更新,从而使测试人员根据接口文档编写的测试用例不准确的问题,以及数据包中新增类文件后,没有与该新增类文件对应的接口文档,避免人工手动编写新增类文件对应的接口文档。通过步骤206至步骤209,可以实现生成目标接口对应的第二接口文档。
因此,为了解决数据包中的类文件更新后,以及第一目标服务新增了新增类文件后,手工编写接口文档的问题。本实施例中通过每间隔预设时间对代码服务器上的存储的第一目标服务的数据包进行扫描,从而可以获得数据包对应的时间信息,如果发现时间信息有更新,则可以确定数据包发生更新,此种情况下可以重新从代码服务器上下载更新的数据包,并对更新的数据包提取接口类信息,以确定目标接口。
例如,将更新的数据包中的类文件与更新前的数据包中的类文件进行比对,可以确定有没有新增类文件,如果有新增类文件,则对新增类文件中包括的接口代码提取接口类信息(也即对目标接口的接口代码提取接口类信息,新增类文件对应的接口为目标接口),生成与目标接口对应的接口文档。如果没有新增类文件,则可以判断原类文件中的类名、方法名、输入参数、返回参数、端口、IP地址等中的至少一种信息是否发生变更,如果存在至少一种信息发生变更,则意味着该原类文件发生了变更(发生变更的原类文件对应的接口即为目标接口),则重新生成与目标接口对应的接口文档。
例如,如下表2所示。对于服务1的版本1,如果服务1的版本1中增加了新增类文件,该新增类文件对应的接口的接口标识为接口C,如果同时对原类文件进行了变更,例如原类文件对应的接口的接口标识为接口A,对接口A对应的接口代码进行更改,例如更改了该接口代码中的输入参数、返回参数、方法名等信息中的任意一种,则接口C对应的接口和接口A对应的接口都为目标接口,重新生成与服务1、版本1、接口C都关联的第二接口文档C,以及生成与服务1、版本1、接口A都关联的第二接口文档A1。第二接口文档A1和第二接口文档C即为重新生成的接口文档。
表2
需要说明的是,对于接口A对应的接口代码进行更改后,由于重新生成了与接口A对应的第二接口文档A1,则采用第二接口文档A1更新如表1中的与接口A对应的第一接口文档A。之后如果用户查询服务1、版本1、接口A都关联的接口文档时,则会查询到第二接口文档A1。也即接口文档可以随着接口的接口代码的更新及时更新,避免接口代码更新了,但是接口文档未更新的情况下,如果测试人员仍然依据之前的接口文档编写测试用例导致测试失败的问题。
步骤210、将与第一目标服务标识、第一版本标识、以及目标接口的接口标识都关联的第二接口文档存储在数据库中。
其中,在生成第二接口文档后,即可以将第二接口文档存储在数据库中,并且,存储的第二接口文档与第一目标服务标识、第一版本标识、以及目标接口的接口标识都关联,从而可以方便后续根据用户选择的服务标识、版本标识、接口标识查找与用户选择的服务标识、版本标识、接口标识都关联的接口文档。
本实施例提供的接口文档生成方法,通过每间隔预设时间对代码服务器上存储的第一目标服务的数据包进行扫描,以根据数据包对应的时间信息,判断数据包是否发生更新,在确定数据包发生更新的情况下,从代码服务器获取更新后的数据包,对更新后的数据包进行分析,以确定目标接口,对目标接口的接口代码提取接口类信息,以根据目标接口的接口代码对应的接口类信息生成与目标接口对应的第二接口文档,将与第一目标服务标识、第一版本标识、以及目标接口的接口标识都关联的第二接口文档存储在数据库中,实现对接口对应的接口文档的及时更新。即在服务的接口发生变更的情况下,可以自动更新发生变更的接口对应的接口文档,不需要重新手动编写接口文档。
需要说明的是,本发明实施例还提供了供用户查询生成的接口文档的方案。由于将生成的接口文档都存储在数据库中,并且,生成的第一接口文档与第一目标服务标识、第一版本标识、以及接口的接口标识都关联,生成的第二接口文档与第一目标服务标识、第一版本标识、以及目标接口的接口标识都关联。用户可以选择服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识,服务器可以根据用户选择的服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识,唯一确定一个接口文档,并将确定的接口文档通过终端返回给用户。具体的,参照图3,图3为本发明实施例提供的一种将生成的接口文档进行显示的步骤流程图,包括如下步骤:
步骤301、接收终端发送的页面请求。
步骤302、响应于页面请求,从数据库中获取至少一个服务的服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识。
需要说明的是,数据库中存储有服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识,当用户在终端上打开一个页面时,终端向服务器发送页面请求,服务器响应于页面请求,从数据库中获取服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识。并可以接着执行步骤303。
步骤303、向终端发送获取的服务的服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识,以使终端显示服务的服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识。
终端上显示服务的服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识后,用户可以根据自己的实际需求,从显示的服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识中选择一个服务标识、版本标识以及接口标识。用户选择后,例如可以点击确定按钮,以通过终端将用户选择的服务标识、版本标识以及接口标识发送给服务器。
步骤304、接收终端发送的第二目标服务标识、第二版本标识、以及目标接口标识。
其中,第二目标服务标识、第二版本标识、目标接口标识为用户在终端上显示的服务标识、与服务标识对应的版本标识、与版本标识对应的接口标识中选择的。
步骤305、根据数据库中存储的与第一目标服务标识、第一版本标识、以及接口的接口标识都关联的第一接口文档,和/或,与第一目标服务标识、第一版本标识、以及目标接口的接口标识都关联的第二接口文档,从数据库中获取与第二目标服务标识、第二版本标识、以及目标接口标识都关联的目标接口文档。
通过步骤304和步骤305,服务器在接收到终端发送的第二目标服务标识、第二版本标识、以及目标接口标识,可以根据数据库中存储的与第一目标服务标识、第一版本标识、以及接口的接口标识都关联的第一接口文档,和/或,与第一目标服务标识、第一版本标识、以及目标接口的接口标识都关联的第二接口文档,确定与第二目标服务标识、第二版本标识、以及目标接口标识都关联的目标接口文档,并获取目标接口文档。
步骤306、向终端发送目标接口文档,以使终端显示目标接口文档。
通过步骤306,服务器可以将目标接口文档发送给终端,从而使终端上可以显示目标接口文档,用户则可以根据显示的目标接口文档,编写测试用例,从而可以对目标接口文档对应的接口进行测试。
参照图4,图4为本发明实施例提供的一种接口文档生成装置的结构示意图,该装置400设置于服务器,包括:
第一获取模块410,用于获取第一目标服务的数据包,其中,数据包包括第一目标服务的所有接口对应的类文件,一个类文件中包括至少一个接口;
解析模块420,用于解析各类文件,以获得各类文件中包括的至少一个接口的接口代码;
生成模块430,用于对各类文件中包括的接口代码提取接口类信息,以根据接口类信息生成第一目标服务的各接口对应的第一接口文档。
本实施例提供的接口文档生成装置,通过获取第一目标服务的数据包,数据包包括第一目标服务的所有接口对应的类文件,一个类文件中包括至少一个接口,解析各类文件,以获得各类文件中包括的至少一个接口的接口代码,对各类文件中包括的接口代码提取接口类信息,以根据接口类信息生成第一目标服务的各接口对应的第一接口文档。因此,无需人工手动编写接口文档,从而可以实现自动生成接口文档,省时省力,并且避免人工手动编写接口文档时容易出错的问题。
可选的,接口类信息包括类名、方法名、第一目标服务标识、方法名对应的方法的输入参数、方法的返回参数、第一版本标识、以及与第一目标服务标识和第一版本标识都对应的端口标识和地址标识,第一版本标识为第一目标服务的第一版本的标识。
可选的,还包括:
存储模块,用于将与第一目标服务标识、第一版本标识、以及接口的接口标识都关联的第一接口文档存储在数据库中。
可选的,还包括:
判断模块,用于每间隔预设时间对代码服务器上存储的第一目标服务的数据包进行扫描,以根据数据包对应的时间信息,判断数据包是否发生更新;
第二获取模块,用于在确定数据包发生更新的情况下,从代码服务器获取更新后的数据包;
确定模块,用于对更新后的数据包提取接口类信息,以确定目标接口,其中,目标接口包括更新后的数据包中的新增类文件对应的接口和/或更新后的数据包中发生变更的原类文件对应的接口;
生成模块,还用于对目标接口的接口代码提取接口类信息,根据目标接口的接口代码对应的接口类信息生成与目标接口对应的第二接口文档;
存储模块,还用于将与第一目标服务标识、第一版本标识、以及目标接口的接口标识都关联的第二接口文档存储在数据库中。
可选的,还包括:
第一接收模块,用于接收终端发送的请求消息,其中,请求消息中包括第一目标服务的第一目标服务标识、第一目标服务的第一版本标识、以及与第一目标服务标识和第一版本标识都对应的存储地址;
第一获取模块,具体用于从代码服务器的存储地址,获取与第一目标服务标识和第一版本标识都对应的第一目标服务的数据包。
可选的,还包括:
第二接收模块,用于接收终端发送的页面请求;
第三获取模块,用于响应于页面请求,从数据库中获取至少一个服务的服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识;
发送模块,用于向终端发送获取的服务的服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识,以使终端显示服务的服务标识、与服务标识对应的版本标识、以及与版本标识对应的接口标识。
可选的,还包括:
第三接收模块,用于接收终端发送的第二目标服务标识、第二版本标识、以及目标接口标识,其中,第二目标服务标识、第二版本标识、目标接口标识为用户在终端上显示的服务标识、与服务标识对应的版本标识、与版本标识对应的接口标识中选择的;
第四获取模块,用于根据数据库中存储的与第一目标服务标识、第一版本标识、以及接口的接口标识都关联的第一接口文档,和/或,与第一目标服务标识、第一版本标识、以及目标接口的接口标识都关联的第二接口文档,从数据库中获取与第二目标服务标识、第二版本标识、以及目标接口标识都关联的目标接口文档;
发送模块,还用于向终端发送目标接口文档,以使终端显示目标接口文档。
另外,本发明实施例还提供一种接口文档生成装置,该接口文档生成装置包括处理器,存储器以及存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述实施例的接口文档生成方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述的接口文档生成方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,的计算机可读存储介质,可以为只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random AccessMemory,简称RAM)、磁碟或者光盘等。
本发明实施例还提供了一种计算机程序,该计算机程序可以存储在云端或本地的存储介质上。在该计算机程序被计算机或处理器运行时用于执行本发明实施例的接口文档生成方法的相应步骤,并且用于实现根据本发明实施例的接口文档生成装置中的相应模块。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域技术人员易于想到的是:上述各个实施例的任意组合应用都是可行的,故上述各个实施例之间的任意组合都是本发明的实施方案,但是由于篇幅限制,本说明书在此就不一一详述了。
在此提供的接口文档生成方法不与任何特定计算机、虚拟***或者其它设备固有相关。各种通用***也可以与基于在此的示教一起使用。根据上面的描述,构造具有本发明方案的***所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的接口文档生成方法中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (12)
1.一种接口文档生成方法,其特征在于,执行于服务器,包括:
获取第一目标服务的数据包,其中,所述数据包包括所述第一目标服务的所有接口对应的类文件,一个所述类文件中包括至少一个所述接口;
解析各所述类文件,以获得各所述类文件中包括的所述至少一个所述接口的接口代码;
对各所述类文件中包括的所述接口代码提取接口类信息,以根据所述接口类信息生成所述第一目标服务的各所述接口对应的第一接口文档。
2.根据权利要求1所述的方法,其特征在于,所述接口类信息包括类名、方法名、第一目标服务标识、所述方法名对应的方法的输入参数、所述方法的返回参数、第一版本标识、以及与所述第一目标服务标识和所述第一版本标识都对应的端口标识和地址标识,第一版本标识为所述第一目标服务的第一版本的标识。
3.根据权利要求2所述的方法,其特征在于,在所述对各所述类文件中包括的所述接口代码提取接口类信息,以根据所述接口类信息生成所述第一目标服务的各所述接口对应的第一接口文档之后,还包括:
将与所述第一目标服务标识、所述第一版本标识、以及所述接口的接口标识都关联的所述第一接口文档存储在数据库中。
4.根据权利要求3所述的方法,其特征在于,在所述将与所述第一目标服务标识、所述第一版本标识、以及所述接口的接口标识都关联的所述第一接口文档存储在数据库中之后,还包括:
每间隔预设时间对代码服务器上存储的所述第一目标服务的数据包进行扫描,以根据所述数据包对应的时间信息,判断所述数据包是否发生更新;
在确定所述数据包发生更新的情况下,从所述代码服务器获取更新后的数据包;
对所述更新后的数据包进行分析,以确定目标接口,其中,所述目标接口包括所述更新后的数据包中的新增类文件对应的接口和/或所述更新后的数据包中发生变更的原类文件对应的接口;
对所述目标接口的接口代码提取接口类信息,以根据目标接口的接口代码对应的接口类信息生成与所述目标接口对应的第二接口文档;
将与所述第一目标服务标识、所述第一版本标识、以及所述目标接口的接口标识都关联的所述第二接口文档存储在所述数据库中。
5.根据权利要求1-4任一所述的方法,其特征在于,在所述获取第一目标服务的数据包之前,还包括:
接收终端发送的请求消息,其中,所述请求消息中包括所述第一目标服务的第一目标服务标识、所述第一目标服务的所述第一版本标识、以及与所述第一目标服务标识和所述第一版本标识都对应的存储地址;
所述获取第一目标服务的数据包,包括:
从代码服务器的所述存储地址,获取与所述第一目标服务标识和所述第一版本标识都对应的所述第一目标服务的数据包。
6.根据权利要求5所述的方法,其特征在于,还包括:
接收终端发送的页面请求;
响应于所述页面请求,从所述数据库中获取至少一个服务的服务标识、与所述服务标识对应的版本标识、以及与所述版本标识对应的接口标识;
向所述终端发送获取的所述服务的服务标识、与所述服务标识对应的版本标识、以及与所述版本标识对应的接口标识,以使所述终端显示所述服务的服务标识、与所述服务标识对应的版本标识、以及与所述版本标识对应的接口标识。
7.根据权利要求6所述的方法,其特征在于,在所述向所述终端发送获取的所述服务的服务标识、与所述服务标识对应的版本标识、以及与所述版本标识对应的接口标识之后,还包括:
接收所述终端发送的第二目标服务标识、第二版本标识、以及目标接口标识,其中,所述第二目标服务标识、所述第二版本标识、所述目标接口标识为用户在所述终端上显示的服务标识、与所述服务标识对应的版本标识、与所述版本标识对应的接口标识中选择的;
根据所述数据库中存储的与所述第一目标服务标识、所述第一版本标识、以及所述接口的接口标识都关联的所述第一接口文档,和/或,与所述第一目标服务标识、所述第一版本标识、以及所述目标接口的接口标识都关联的所述第二接口文档,从所述数据库中获取与所述第二目标服务标识、所述第二版本标识、以及所述目标接口标识都关联的目标接口文档;
向所述终端发送所述目标接口文档,以使所述终端显示所述目标接口文档。
8.一种接口文档生成装置,其特征在于,设置于服务器,包括:
第一获取模块,用于获取第一目标服务的数据包,其中,所述数据包包括所述第一目标服务的所有接口对应的类文件,一个所述类文件中包括至少一个所述接口;
解析模块,用于解析各所述类文件,以获得各所述类文件中包括的所述至少一个所述接口的接口代码;
生成模块,用于对各所述类文件中包括的所述接口代码提取接口类信息,以根据所述接口类信息生成所述第一目标服务的各所述接口对应的第一接口文档。
9.根据权利要求8所述的装置,其特征在于,所述接口类信息包括类名、方法名、第一目标服务标识、所述方法名对应的方法的输入参数、所述方法的返回参数、第一版本标识、以及与所述第一目标服务标识和所述第一版本标识都对应的端口标识和地址标识,第一版本标识为所述第一目标服务的第一版本的标识。
10.根据权利要求9所述的装置,其特征在于,还包括:
存储模块,用于将与所述第一目标服务标识、所述第一版本标识、以及所述接口的接口标识都关联的所述第一接口文档存储在数据库中。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的接口文档生成方法的步骤。
12.一种接口文档生成装置,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述的接口文档生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911418878.6A CN111240653B (zh) | 2019-12-31 | 2019-12-31 | 接口文档生成方法、装置及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911418878.6A CN111240653B (zh) | 2019-12-31 | 2019-12-31 | 接口文档生成方法、装置及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111240653A true CN111240653A (zh) | 2020-06-05 |
CN111240653B CN111240653B (zh) | 2024-02-02 |
Family
ID=70874189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911418878.6A Active CN111240653B (zh) | 2019-12-31 | 2019-12-31 | 接口文档生成方法、装置及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111240653B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651196A (zh) * | 2020-06-24 | 2020-09-11 | 腾讯科技(深圳)有限公司 | 文档发布方法、装置及服务器 |
CN111796809A (zh) * | 2020-06-29 | 2020-10-20 | 平安普惠企业管理有限公司 | 接口文档生成方法、装置、电子设备及介质 |
CN111880778A (zh) * | 2020-06-30 | 2020-11-03 | 百度在线网络技术(北京)有限公司 | 接口文档的生成方法、装置、电子设备及存储介质 |
CN111984228A (zh) * | 2020-07-09 | 2020-11-24 | 招联消费金融有限公司 | 一种接口文档的处理方法、装置、计算机设备和存储介质 |
CN112181370A (zh) * | 2020-09-17 | 2021-01-05 | 武汉联影医疗科技有限公司 | 数据交互关系的生成方法、计算机设备和存储介质 |
CN112463210A (zh) * | 2020-12-04 | 2021-03-09 | 上海路人王信息科技有限公司 | 接口文档生成方法、终端设备及计算机可读存储介质 |
CN112486460A (zh) * | 2020-11-30 | 2021-03-12 | 携程旅游信息技术(上海)有限公司 | 自动导入接口文档的方法、***、设备和介质 |
CN112583891A (zh) * | 2020-11-19 | 2021-03-30 | 联通智网科技有限公司 | 接口文档获取方法、装置和服务器 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015154682A1 (zh) * | 2014-04-08 | 2015-10-15 | 北京奇虎科技有限公司 | 一种网络请求处理方法、网络服务器和网络*** |
CN107885499A (zh) * | 2017-10-19 | 2018-04-06 | 平安壹钱包电子商务有限公司 | 一种接口文档生成方法及终端设备 |
CN109446072A (zh) * | 2018-09-27 | 2019-03-08 | 深圳壹账通智能科技有限公司 | 测试脚本的生成方法和装置 |
CN110162296A (zh) * | 2019-04-15 | 2019-08-23 | 平安科技(深圳)有限公司 | 应用程序编程接口文档的生成方法、装置及终端设备 |
CN110308930A (zh) * | 2019-06-18 | 2019-10-08 | 广州华多网络科技有限公司 | 接口文档生成方法、装置、计算机设备和存储介质 |
CN110377336A (zh) * | 2019-06-17 | 2019-10-25 | 平安普惠企业管理有限公司 | 接口文档生成方法、装置、计算机设备和存储介质 |
CN110442378A (zh) * | 2019-06-27 | 2019-11-12 | 平安科技(深圳)有限公司 | 接口文档的修改方法和*** |
-
2019
- 2019-12-31 CN CN201911418878.6A patent/CN111240653B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015154682A1 (zh) * | 2014-04-08 | 2015-10-15 | 北京奇虎科技有限公司 | 一种网络请求处理方法、网络服务器和网络*** |
CN107885499A (zh) * | 2017-10-19 | 2018-04-06 | 平安壹钱包电子商务有限公司 | 一种接口文档生成方法及终端设备 |
CN109446072A (zh) * | 2018-09-27 | 2019-03-08 | 深圳壹账通智能科技有限公司 | 测试脚本的生成方法和装置 |
CN110162296A (zh) * | 2019-04-15 | 2019-08-23 | 平安科技(深圳)有限公司 | 应用程序编程接口文档的生成方法、装置及终端设备 |
CN110377336A (zh) * | 2019-06-17 | 2019-10-25 | 平安普惠企业管理有限公司 | 接口文档生成方法、装置、计算机设备和存储介质 |
CN110308930A (zh) * | 2019-06-18 | 2019-10-08 | 广州华多网络科技有限公司 | 接口文档生成方法、装置、计算机设备和存储介质 |
CN110442378A (zh) * | 2019-06-27 | 2019-11-12 | 平安科技(深圳)有限公司 | 接口文档的修改方法和*** |
Non-Patent Citations (1)
Title |
---|
胡佳琦,罗明,陈绵云,尹平林: "FOXPRO FOR WINDOWS&SDOS下文档的快速汉化", no. 10 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651196A (zh) * | 2020-06-24 | 2020-09-11 | 腾讯科技(深圳)有限公司 | 文档发布方法、装置及服务器 |
CN111796809A (zh) * | 2020-06-29 | 2020-10-20 | 平安普惠企业管理有限公司 | 接口文档生成方法、装置、电子设备及介质 |
CN111880778A (zh) * | 2020-06-30 | 2020-11-03 | 百度在线网络技术(北京)有限公司 | 接口文档的生成方法、装置、电子设备及存储介质 |
CN111880778B (zh) * | 2020-06-30 | 2023-12-22 | 百度在线网络技术(北京)有限公司 | 接口文档的生成方法、装置、电子设备及存储介质 |
CN111984228A (zh) * | 2020-07-09 | 2020-11-24 | 招联消费金融有限公司 | 一种接口文档的处理方法、装置、计算机设备和存储介质 |
CN111984228B (zh) * | 2020-07-09 | 2023-12-12 | 招联消费金融有限公司 | 一种接口文档的处理方法、装置、计算机设备和存储介质 |
CN112181370A (zh) * | 2020-09-17 | 2021-01-05 | 武汉联影医疗科技有限公司 | 数据交互关系的生成方法、计算机设备和存储介质 |
CN112181370B (zh) * | 2020-09-17 | 2023-02-28 | 武汉联影医疗科技有限公司 | 数据交互关系的生成方法、计算机设备和存储介质 |
CN112583891A (zh) * | 2020-11-19 | 2021-03-30 | 联通智网科技有限公司 | 接口文档获取方法、装置和服务器 |
CN112583891B (zh) * | 2020-11-19 | 2021-07-06 | 联通智网科技有限公司 | 接口文档获取方法、装置和服务器 |
CN112486460A (zh) * | 2020-11-30 | 2021-03-12 | 携程旅游信息技术(上海)有限公司 | 自动导入接口文档的方法、***、设备和介质 |
CN112463210A (zh) * | 2020-12-04 | 2021-03-09 | 上海路人王信息科技有限公司 | 接口文档生成方法、终端设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111240653B (zh) | 2024-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111240653B (zh) | 接口文档生成方法、装置及可读存储介质 | |
CN110221982B (zh) | 业务***的性能测试方法、装置、设备及可读存储介质 | |
CN111639019B (zh) | 代码测试方法、装置及可读存储介质 | |
CN106469044B (zh) | 实现页面跳转的方法和装置 | |
CN110716783A (zh) | 一种前端页面生成、部署方法及装置、存储介质和设备 | |
CN109542412A (zh) | 接口信息生成方法、装置、计算机设备和存储介质 | |
CN111367595B (zh) | 数据处理方法、程序运行方法、装置及处理设备 | |
CN110955409B (zh) | 在云平台上创建资源的方法和装置 | |
CN110750433A (zh) | 接口测试方法和装置 | |
CN112667697A (zh) | 结合rpa和ai的房产信息的获取方法及装置 | |
CN110019444B (zh) | 一种操作请求处理方法、装置、设备及*** | |
CN113704110A (zh) | 用户界面的自动化测试方法及装置 | |
CN110515631B (zh) | 应用安装数据包的生成方法、服务器及计算机存储介质 | |
US20210026756A1 (en) | Deriving software application dependency trees for white-box testing | |
CN111090589A (zh) | 软件测试方法、软件测试装置及可读存储介质 | |
CN114153910A (zh) | 数据采集方法、装置及电子装置、计算机程序产品 | |
CN110674023B (zh) | 一种接口测试方法和装置 | |
CN110188106B (zh) | 一种数据管理方法和装置 | |
CN111045720A (zh) | 代码管理方法、代码管理***、服务器及介质 | |
CN110737577B (zh) | 一种测试缺陷数据存储方法和装置 | |
CN111240790A (zh) | 一种应用的多语言适配方法、装置、客户端和存储介质 | |
CN114285779B (zh) | 测试请求的处理方法、装置和*** | |
CN111078571B (zh) | 模拟响应的测试方法、终端设备及计算机可读存储介质 | |
US11729246B2 (en) | Apparatus and method for determining types of uniform resource locator | |
CN113326208A (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 |