[发明专利]一种软件SQL测试方法、装置、存储介质及系统在审
申请号: | 202110335561.7 | 申请日: | 2021-03-29 |
公开(公告)号: | CN112925720A | 公开(公告)日: | 2021-06-08 |
发明(设计)人: | 刘翰宇;肖月亮;唐铄 | 申请(专利权)人: | 中国建设银行股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F16/242 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 sql 测试 方法 装置 存储 介质 系统 | ||
1.一种软件SQL测试方法,其特征在于,包括:
读取软件产品中的代码,获得待处理动态SQL语句和待处理非动态SQL语句;
对所述待处理动态SQL语句进行扩展,得到扩展SQL语句,并将所述扩展SQL语句和所述待处理非动态SQL语句作为目标SQL语句;
利用所述目标SQL语句,生成测试用例,并将所述测试用例作为输入对所述目标SQL语句进行测试。
2.根据权利要求1所述的方法,其特征在于,对所述待处理动态SQL语句进行扩展,得到扩展SQL语句,包括:
根据所述待处理动态SQL语句的动态条件对所述待处理动态SQL语句进行扩展,得到扩展SQL语句;其中,所述动态条件是指SQL语句中的判断标签。
3.根据权利要求2所述的方法,其特征在于,在根据所述待处理动态SQL语句的动态条件对所述待处理动态SQL语句进行扩展,得到扩展SQL语句之后,所述方法还包括:
若检测到所述扩展SQL语句被持久层拦截器改写,则将改写后的扩展SQL语句作为最终的扩展SQL语句。
4.根据权利要求1所述的方法,其特征在于,将所述扩展SQL语句和所述待处理非动态SQL语句作为目标SQL语句,包括:
若检测到所述待处理非动态SQL语句被持久层拦截器改写,则将改写后的待处理非动态SQL语句作为最终的目标非动态SQL语句;
将所述扩展SQL语句和所述目标非动态SQL语句作为目标SQL语句。
5.根据权利要求1所述的方法,其特征在于,读取软件产品中的代码,获得待处理动态SQL语句和待处理非动态SQL语句,包括:
读取软件产品中的源代码,对所述源代码进行解析,得到所述源代码中的待处理动态SQL语句和待处理非动态SQL语句。
6.根据权利要求1所述的方法,其特征在于,读取软件产品中的代码,获得待处理动态SQL语句和待处理非动态SQL语句,还包括:
获取软件产品中持久层框架的目标接口;
通过所述目标接口获取持久层框架的待处理动态SQL语句和待处理非动态SQL语句。
7.根据权利要求1所述的方法,其特征在于,利用所述目标SQL语句,生成测试用例,包括:
通过所述目标SQL语句和预设查询条件,得到待测试SQL语句;
读取所述待测试SQL语句中的内容,获得待处理SQL使用表;
根据所述待处理SQL使用表中的参数字段和参数字段取值,生成测试用例。
8.根据权利要求7所述的方法,其特征在于,根据所述待处理SQL使用表中的参数字段和参数字段取值,生成测试用例,包括:
利用预设的正交试验设计规则对所参数字段和参数字段取值进行处理,生成测试用例。
9.根据权利要求7所述的方法,其特征在于,通过所述目标SQL语句和预设查询条件,得到待测试SQL语句,包括:
通过所述目标SQL语句,得到获取SQL使用表、SQL执行条件以及SQL使用表的主键及全部索引;
根据所述获取SQL使用表、SQL执行条件以及SQL使用表的主键及全部索引生成数据表;
利用预设查询条件,确定所述数据表中的待测试SQL语句。
10.根据权利要求9所述的方法,其特征在于,在根据所述获取SQL使用表、SQL执行条件以及SQL使用表的主键及全部索引生成数据表之后,所述方法还包括:
将所述数据表保存到数据库中,用于数据表的备份。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国建设银行股份有限公司,未经中国建设银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110335561.7/1.html,转载请声明来源钻瓜专利网。