本发明涉及数据库,尤其涉及一种对数据库表的查询接口进行验证方法、装置及电子设备。
背景技术:
1、在全球化数字化发展浪潮下,以“移动化”为代表的用户金融消费行为发生了深刻变化,对银行线上服务能力提出新的要求,促使银行数字化转型向纵深推进。各个银行都推出各种各样的手机银行新版本,手机银行不再是单纯的电子渠道,而是各家银行以线上经营能力为支撑的最大自建生态,是能满足广大客户金融需求和非金融需求的一站式服务基地。
2、在手机银行的开发过程中,经常会出现启用数据库新表的情况。当需要用到这个数据库新表的数据时,开发人员会针对该数据库新表提供一个查询接口,用来查询表中数据,此时需要到对接口字段输出进行验证,以确保接口数据输出正确。
3、针对数据库表数据查询输出接口,传统的测试方式是通过手工调用接口,如页面调用、或者postman调用获取接口返回体。根据返回体内的字段依次跟数据库表数据字段进行核对。当数据库字段较少时,接口输出字段验证比较简单;但是当数据库字段逐渐增多时,核对数据的难度就开始呈指数增加。当字段多到一定量时,很难通过人工的方式去核对数据,其一过程耗时,其二数据太多容易看错从而导致核对错误。
4、因此,现有技术还有待于改进和发展。
技术实现思路
1、鉴于上述现有技术的不足,本发明提供了一种对数据库表的查询接口进行验证方法、装置及电子设备,旨在解决现有技术中数据库字段较多时,对数据库表的查询接口的输出字段进行人工验证时,验证过程耗时较长,容易看错数据而导致核对错误的问题。
2、本发明的技术方案如下:
3、本发明第一实施例提供了一种对数据库表的查询接口进行验证方法,所述方法包括:
4、检测到测试指令,基于数据库表构建插入语句,根据所述插入语句生成数据验证集;
5、基于所述数据验证集获取接口查询条件的请求入参;
6、对响应体的参数进行设置;
7、基于所述请求入参调用查询接口,获取查询接口返回的响应体,根据所述响应体的参数获取响应体的输出数据;
8、将所述输出数据与数据验证集进行对比,根据对比结果得到验证结果。
9、进一步地,所述将所述输出数据与数据验证集进行对比,根据对比结果得到验证结果后,还包括:
10、执行插入语句清理指令,删除测试数据。
11、进一步地,所述将所述输出数据与数据验证集进行对比,根据对比结果得到验证结果,还包括:
12、将所述输出数据与数据验证集进行对比;
13、若所述输出数据与数据验证集对比一致,则判定接口验证成功;
14、若所述输出数据与数据验证集对比不一致,则判定接口验证失败。
15、进一步地,所述对响应体的参数进行设置,包括:
16、对响应体输出数据的取值路径和数据类型进行设置。
17、进一步地,基于所述请求入参调用查询接口,获取查询接口返回的响应体,根据所述响应体的参数获取响应体的输出数据,包括:
18、基于调用指令对请求入参调用查询接口进行调用;
19、获取调用后的查询接口返回的响应体的输出数据;
20、根据设置的输出数据的取值路径,获取响应体的输出数据。
21、进一步地,将所述输出数据与数据验证集进行对比,根据对比结果得到验证结果,包括:
22、获取响应体的输出数据的数据类型;
23、若响应体的输出数据的数据类型为json格式,则将所述输出数据与数据验证集进行比对,根据对比结果得到验证结果;
24、若响应体的输出数据的数据类型为jsonarray格式,则将所述输出数据转换为若干个json格式的目标输出数据,将每一个json格式的目标输出数据与数据验证集进行比对,根据对比结果得到验证结果。
25、进一步地,所述检测到测试指令,基于数据库表构建插入语句,根据所述插入语句生成数据验证集,包括:
26、检测到测试指令,基于数据库表构建全字段的sql插入语句;
27、获取所述sql插入语句的字段和字段值;
28、基于所述sql插入字句的字段和字段值,构建对查询接口进行数据验证的数据验证集。
29、本发明的另一实施例提供了一种对数据库表的查询接口进行验证装置,装置包括:
30、语句插入及验证集生成模块,用于检测到测试指令,基于数据库表构建插入语句,根据所述插入语句生成数据验证集;
31、入参获取模块,用于基于所述数据验证集获取接口查询条件的请求入参;
32、数据格式设置模块,用于对响应体的参数进行设置;
33、数据获取模块,用于基于所述请求入参调用查询接口,获取查询接口返回的响应体,根据所述响应体的参数获取响应体的输出数据;
34、数据对比模块,用于将所述输出数据与数据验证集进行对比,根据对比结果得到验证结果。
35、本发明的另一实施例提供了一种电子设备,所述电子设备包括至少一个处理器;以及,
36、与所述至少一个处理器通信连接的存储器;其中,
37、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的对数据库表的查询接口进行验证方法。
38、本发明的另一实施例还提供了一种非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行上述的对数据库表的查询接口进行验证方法。
39、有益效果:本发明实施例的对数据库表的查询接口进行验证方法,通过自动化的方式去验证查询接口的输出数据,节省查询接口的测试工作量,同时也能提高测试的准确率。
1.一种对数据库表的查询接口进行验证方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述将所述输出数据与数据验证集进行对比,根据对比结果得到验证结果后,还包括:
3.根据权利要求1所述的方法,其特征在于,所述将所述输出数据与数据验证集进行对比,根据对比结果得到验证结果,还包括:
4.根据权利要求3所述的方法,其特征在于,所述对响应体的参数进行设置,包括:
5.根据权利要求4所述的方法,其特征在于,所述基于所述请求入参调用查询接口,获取查询接口返回的响应体,根据所述响应体的参数获取响应体的输出数据,包括:
6.根据权利要求5所述的方法,其特征在于,所述将所述输出数据与数据验证集进行对比,根据对比结果得到验证结果,包括:
7.根据权利要求6所述的方法,其特征在于,所述检测到测试指令,基于数据库表构建插入语句,根据所述插入语句生成数据验证集,包括:
8.一种对数据库表的查询接口进行验证装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,所述电子设备包括至少一个处理器;以及,
10.一种非易失性计算机可读存储介质,其特征在于,所述非易失性计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行时,可使得所述一个或多个处理器执行权利要求1-7任一项所述的对数据库表的查询接口进行验证方法。