[发明专利]数据库文本的检查方法及装置、电子设备在审
申请号: | 202211641686.3 | 申请日: | 2022-12-20 |
公开(公告)号: | CN116069627A | 公开(公告)日: | 2023-05-05 |
发明(设计)人: | 马鸣 | 申请(专利权)人: | 中国工商银行股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F40/205;G06F40/253 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 黄海英 |
地址: | 100140 北*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 文本 检查 方法 装置 电子设备 | ||
1.一种数据库文本的检查方法,其特征在于,包括:
对目标数据库文本进行解析,得到在各个代码位置的属性特征参数,其中,所述目标数据库文本中记录有表征目标应用程序的业务运行逻辑的源代码;
整合所有所述属性特征参数,得到属性特征集合;
基于所述属性特征集合以及所述目标数据库文本,生成测试案例;
基于所述测试案例,对所述目标数据库文本进行业务逻辑检查。
2.根据权利要求1所述的检查方法,其特征在于,对目标数据库文本进行解析,得到在各个代码位置的属性特征参数的步骤,包括:
基于预先指定的文本提取规则,提取所述源代码中的文本信息,得到所述目标数据库文本;
对所述目标数据库文本进行语法解析,得到关联所述目标数据库文本的语法树结构,其中,所述语法树结构包含一个根节点和至少一个叶节点,所述根节点与所述至少一个叶节点之间形成层级关系;
遍历所述语法树结构,提取关联业务运行逻辑的动态表达式;
对所有所述动态表达式进行上下文分析,得到在各个所述代码位置的属性特征参数。
3.根据权利要求2所述的检查方法,其特征在于,基于预先指定的文本提取规则,
提取所述源代码中的文本信息,得到所述目标数据库文本的步骤,包括:
获取存储所述源代码的源文件的文件类型;
提取与所述文件类型对应的所述文本提取规则;
采用所述文本提取规则提取所述源文件中关联指定查询语言的文本信息,得到所述目标数据库文本。
4.根据权利要求2所述的检查方法,其特征在于,遍历所述语法树结构,提取关联业务运行逻辑的动态表达式的步骤,包括:
由所述根节点作为起始位置,遍历所述语法树结构,得到遍历结果;
提取所述遍历结果中关联所述语法树结构在每个所述叶节点的属性表达式,得到所述动态表达式。
5.根据权利要求2所述的检查方法,其特征在于,对所有所述动态表达式进行上下文分析,得到在各个所述代码位置的属性特征参数的步骤,包括:
提取每个所述动态表达式中出现的属性参数,并将所述动态表达式与对应的所述属性参数组合为属性特征二元组;
定位所述动态表达式在所述源代码中的代码位置;
将所述属性特征二元组表征为在所述代码位置的所述属性特征参数。
6.根据权利要求1所述的检查方法,其特征在于,基于所述属性特征集合以及所述目标数据库文本,生成测试案例的步骤,包括:
对所述属性特征集合进行预处理,其中,所述预处理的策略包括下述至少之一:去重、合并、空白项删除;
基于预处理后的所述属性特征集合以及所述目标数据库文件,生成在指定测试框架下的所述测试案例。
7.根据权利要求6所述的检查方法,其特征在于,在基于所述属性特征集合以及所述目标数据库文本,生成测试案例之后,还包括:
分析预处理后的所述属性特征集合中关联每个动态表达式的属性参数值域;
将所述属性参数值域映射为与所述指定测试框架等价的应用程序接口范围;
整合所有所述动态表达式的等价应用程序接口范围,得到一组多维测试数据集;
将所述一组多维测试数据集表征为测试数据源。
8.根据权利要求7所述的检查方法,其特征在于,基于所述测试案例,对所述目标数据库文本进行业务逻辑检查的步骤,包括:
将所述测试数据源作为所述测试案例的输入参数,执行所述测试案例,得到可执行原生查询语言代码;
将所述可执行原生查询语言代码传入检查模块,并采用所述检查模块对所述目标数据库文本进行业务逻辑检查,其中,所述业务逻辑检查包括下述至少之一:对所述目标数据库文本中的源代码进行规范检查、对所述目标数据库文本中的源代码运行后占用资源进行检查、对所述目标数据库文本中的源代码包含的敏感字段进行检查。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国工商银行股份有限公司,未经中国工商银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211641686.3/1.html,转载请声明来源钻瓜专利网。