[发明专利]Sql语句测试方法、装置、电子设备及可读存储介质在审
| 申请号: | 202111157611.3 | 申请日: | 2021-09-30 |
| 公开(公告)号: | CN113886244A | 公开(公告)日: | 2022-01-04 |
| 发明(设计)人: | 高静 | 申请(专利权)人: | 平安银行股份有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 深圳市沃德知识产权代理事务所(普通合伙) 44347 | 代理人: | 高杰;于志光 |
| 地址: | 518000 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | sql 语句 测试 方法 装置 电子设备 可读 存储 介质 | ||
1.一种Sql语句测试方法,其特征在于,所述方法包括:
获取Sql测试指令,从所述Sql测试指令中解析出测试类型与测试范围;
当所述测试类型与预设的逻辑测试类型相同时,将所述测试范围内的Sql语句转换为脚本格式;
利用预设数据库对转换为脚本格式的Sql语句进行逻辑测试,并将逻辑测试的结果进行窗口展示;
当所述测试类型与预设的扫描测试类型相同时,将所述测试范围内的Sql语句打包为代码包;
将所述代码包发送至预设扫描平台进行扫描测试,获取所述预设扫描平台返回的扫描测试结果,并将所述扫描测试结果进行窗口展示。
2.如权利要求1所述的Sql语句测试方法,其特征在于,所述从所述Sql测试指令中解析出测试类型与测试范围,包括:
将所述Sql测试指令拆分为指令头部和指令主体;
利用预设解析器从所述指令头解析出测试类型字段,根据所述测试类型字段确定所述Sql测试指令的测试类型;
检测所述指令主体中是否包含报文字段;
当所述指令主体中包含报文字段时,对所述指令主体进行反序列化处理,得到测试范围参数,根据所述测试范围参数确定所述Sql测试指令的测试范围;
当所述指令主体中不包含报文字段时,对所述指令主体进行字符串分割,得到测试范围参数,根据所述测试范围参数确定所述Sql测试指令的测试范围。
3.如权利要求2所述的Sql语句测试方法,其特征在于,所述对所述指令主体进行反序列化处理,得到测试范围参数,包括:
提取所述指令主体中的数据内容类型;
选取与所述数据内容类型对应的解码器对所述指令主体进行反序列化,得到数据内容;
对所述数据内容进行参数分析,得到测试范围参数。
4.如权利要求2所述的Sql语句测试方法,其特征在于,所述对所述指令主体进行字符串分割,得到测试范围参数,包括:
根据预设的字符串分隔符号对所述指令主体进行分割,并按照分割出的字符串在所述指令主体中的位置,将分隔出的字符串进行编号;
对所述指令主体中预设位置的字符串进行解析,得到测试范围参数。
5.如权利要求1所述的Sql语句测试方法,其特征在于,所述将所述测试范围内的Sql语句转换为脚本格式,包括:
构建空白的Sql文档,在所述Sql文档中构建主函数,并将所述测试范围内的Sql语句写入所述主函数中;
将所述Sql文档的文件类型转换为脚本类型,得到脚本格式的Sql语句。
6.如权利要求1所述的Sql语句测试方法,其特征在于,所述利用预设数据库对转换为脚本格式的Sql语句进行逻辑测试,包括:
获取预设数据库的登录信息,利用所述登录信息登录所述预设数据库,并调用所述预设数据库的执行函数;
利用所述执行函数执行所述转换为脚本格式的Sql语句,得到执行结果;
判断所述执行结果是否符合预期结果;
若执行结果与所述预期结果不符合,则确定所述Sql语句的逻辑错误;
若执行结果与所述预期结果符合,则确定所述Sql语句的逻辑正确。
7.如权利要求1至6中任一项所述的Sql语句测试方法,其特征在于,所述将所述代码包发送至预设扫描平台进行扫描测试,包括:
利用预设扫描平台对所述代码包中的Sql语句进行数据结构扫描,得到所述代码包中Sql语句的数据结构;
判断所述数据结构是否符合预设的标准结构;
当所述数据结构符合所述标准结构,则输出所述Sql语句结构完整的扫描测试结果;
当所述数据结构不符合所述标准结构,则输出所述Sql语句结构不完整的扫描测试结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于平安银行股份有限公司,未经平安银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111157611.3/1.html,转载请声明来源钻瓜专利网。





