logo好方法网

一种接口测试方法、装置、电子设备及存储介质


技术摘要:
本公开提供了一种接口测试方法、装置、电子设备及存储介质,其中,该方法包括:在接收到针对目标服务的服务更新指令之后,获取为目标服务定义的接口描述语言IDL文件;从IDL文件中提取出目标服务的服务描述参数以及至少一个服务接口的接口描述参数;基于每个服务接口的  全部
背景技术:
微服务作为一种新型的软件架构,其是将单个大型服务进行拆分得到的用于实现 特定功能的轻量级服务,被广泛应用于金融、电子商务等领域。通常,在微服务开发完成后, 可以利用远程过程调用(Remote  Procedure  Call,RPC)服务实现对该微服务的各项接口功 能进行测试。 目前,可以基于超文本传输协议(Hyper  Text  Transfer  Protocol,HTTP)服务框 架实现接口测试,也即,将RPC服务封装成HTTP服务,再基于HTTP协议的接口自动化框架进 行接口测试。 可见,上述接口测试方案需要开发人员进行RPC服务的二次封装,操作复杂度较 高,增加了开发成本。
技术实现要素:
本公开至少提供一种接口测试方案,能够实现对服务接口的自动测试,操作简单, 省时省力。 主要包括以下几个方面: 第一方面,本公开实施例提供了一种接口测试方法,所述方法包括: 在接收到针对目标服务的服务更新指令之后,获取为所述目标服务定义的接口描 述语言IDL文件; 从所述IDL文件中提取出所述目标服务的服务描述参数以及至少一个服务接口的 接口描述参数; 基于每个服务接口的接口描述参数,生成该服务接口的接口测试用例; 利用预先设置的接口测试模板、所述接口测试用例、以及所述服务描述参数,进行 接口测试,得到与所述服务更新指令对应的接口测试结果。 在一种实施方式中,所述服务接口的接口描述参数为多个,所述基于每个服务接 口的接口描述参数,生成该服务接口的接口测试用例,包括: 针对每个服务接口中的每个接口描述参数,基于该接口描述参数的类型,确定该 接口描述参数的接口描述参数值; 按照各个接口描述参数的排列顺序,将各个接口描述参数的接口描述参数值进行 组合,得到该服务接口的接口测试用例。 在一种实施方式中,所述按照各个接口描述参数的排列顺序,将各个接口描述参 数的接口描述参数值进行组合,得到该服务接口的接口测试用例,包括: 针对每个服务接口的每个接口描述参数,生成该接口描述参数及该接口描述参数 4 CN 111581083 A 说 明 书 2/12 页 的接口描述参数值对应的一组键值对数据; 按照各个接口描述参数的排列顺序,将各个接口描述参数对应的键值对数据进行 组合,得到该服务接口的接口测试用例。 在一种实施方式中,所述方法还包括: 针对所述每个服务接口,将该服务接口的接口测试用例中的每组键值对数据、以 及该组键值对数据对应的实体类标识存储至预设数据库中。 在一种实施方式中,所述利用预先设置的接口测试模板、所述接口测试用例、以及 所述服务描述参数,进行接口测试,得到与所述服务更新指令对应的接口测试结果,包括: 利用预先设置的接口测试模板,读取所述服务描述参数,确定与该服务描述参数 匹配的至少一个服务接口; 从所述预设数据库中分别读取所述至少一个服务接口的接口测试用例,并执行每 个服务接口的接口测试用例,得到与所述服务更新指令对应的接口测试结果。 在一种实施方式中,所述从所述预设数据库中分别读取所述至少一个服务接口的 接口测试用例,包括: 针对每个服务接口,从所述预设数据库中读取该服务接口的接口测试用例的每组 键值对数据、以及每组键值对数据对应的实体类标识; 所述执行每个服务接口的接口测试用例,得到与所述服务更新指令对应的接口测 试结果,包括: 针对每个服务接口,将读取的该服务接口的接口测试用例中的每组键值对数据转 换为与所述实体类标识对应的接口描述参数值,得到转换后的接口测试用例; 执行各个转换后的接口测试用例,得到与所述服务更新指令对应的接口测试结 果。 在一种实施方式中,所述执行每个服务接口的接口测试用例,得到与所述服务更 新指令对应的接口测试结果,包括: 执行各个服务接口的接口测试用例,得到执行结果; 将该执行结果与利用预设测试框架设置的预期结果进行比对,得到与所述服务更 新指令对应的接口测试结果。 在一种实施方式中,所述服务接口的接口测试用例为多个,所述从所述预设数据 库中分别读取所述至少一个服务接口的接口测试用例,并执行每个服务接口的接口测试用 例,得到与所述服务更新指令对应的接口测试结果,包括: 按照预先生成的可扩展标记语言XML文件所定义的接口测试用例的执行顺序,依 次读取每个服务接口的多个接口测试用例,并顺序执行针对该服务接口的每个接口测试用 例,得到与该服务接口对应的测试结果报告。 在一种实施方式中,所述从所述IDL文件中提取出所述目标服务的服务描述参数 以及至少一个服务接口的接口描述参数,包括: 判断获取的所述IDL文件是否已经存储在预设文件库中; 若否,则从所述IDL文件中提取出所述目标服务的服务描述参数以及至少一个服 务接口的接口描述参数。 第二方面,本公开还提供了一种接口测试装置,所述装置包括: 5 CN 111581083 A 说 明 书 3/12 页 文件获取模块,用于在接收到针对目标服务的服务更新指令之后,获取为所述目 标服务定义的接口描述语言IDL文件; 参数提取模块,用于从所述IDL文件中提取出所述目标服务的服务描述参数以及 至少一个服务接口的接口描述参数; 用例生成模块,用于基于每个服务接口的接口描述参数,生成该服务接口的接口 测试用例; 接口测试模块,用于利用预先设置的接口测试模板、所述接口测试用例、以及所述 服务描述参数,进行接口测试,得到与所述服务更新指令对应的接口测试结果。 第三方面,本公开还提供了一种电子设备,包括:处理器、存储器和总线,所述存储 器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储 器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如第一方面及其各种实 施方式任一所述的接口测试方法的步骤。 第四方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质上 存储有计算机程序,该计算机程序被处理器运行时执行如第一方面及其各种实施方式任一 所述的接口测试方法的步骤。 采用上述方案,其在接收到针对目标服务的服务更新指令之后,首先可以获取为 所述目标服务定义的接口描述语言IDL文件,并从所述IDL文件中提取出所述目标服务的服 务描述参数以及至少一个服务接口的接口描述参数;然后可以基于每个服务接口的接口描 述参数,生成该服务接口的接口测试用例;最后利用预先设置的接口测试模板、所述接口测 试用例、以及所述服务描述参数,进行接口测试,得到与所述服务更新指令对应的接口测试 结果。上述方案基于获取的IDL文件可以自动提取出目标服务的服务描述参数以及至少一 个服务接口的接口描述参数,并可以基于接口描述参数自动生成接口测试用例,这样,即可 以利用预先设置的接口测试模板自动导入上述接口测试用例和服务描述参数以实现接口 的自动测试,整个测试过程操作简单,无需人工进行封装等开发操作,省时省力。 为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合 所附附图,作详细说明如下。 附图说明 为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附 图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出 了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图 仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人 员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。 图1示出了本公开实施例一所提供的一种接口测试方法的流程图; 图2示出了本公开实施例一所提供的接口测试方法中,生成接口测试用例具体方 法的流程图; 图3示出了本公开实施例一所提供的接口测试方法中,生成接口测试结果具体方 法的流程图; 图4示出了本公开实施例二所提供的一种接口测试装置的示意图; 6 CN 111581083 A 说 明 书 4/12 页 图5示出了本公开实施例三所提供的一种电子设备的示意图。
下载此资料需消耗2积分,
分享到:
收藏