数据库迭代测试方法、装置、设备及存储介质制造方法及图纸

技术编号:33886338 阅读:20 留言:0更新日期:2022-06-22 17:19
本发明专利技术提供了一种数据库迭代测试方法、装置、设备及存储介质,方法包括从先前各个版本的历史数据库中选择一个版本作为基准数据库;构造第一测试用例;利用所述第一测试用例对所述基准数据库进行测试获得第一测试结果集;校验所述第一测试结果集是否达到预期效果;当所述第一测试结果集未达到预期效果时对所述第一测试用例进行调整,直至所述第一测试结果集达到预期效果;存储所述第一测试结果集达到预期效果时的所述第一测试用例作为基准测试用例,以及存储达到预期效果的所述第一测试结果集作为基准结果集,本发明专利技术通过维护一份基准测试用例及基准结果集用于与最新版本数据库进行对比测试,减少了测试用例的执行次数,提高了测试效率。了测试效率。了测试效率。

【技术实现步骤摘要】
数据库迭代测试方法、装置、设备及存储介质


[0001]本专利技术涉及数据库测试
,尤其涉及一种数据库迭代测试方方法、装置、设备及存储介质。

技术介绍

[0002]在关系型数据库的版本迭代过程中,会衍生出种类繁多的功能特性,每个版本更新的功能都需要投入人力进行测试,在测试新增功能无误的情况下,同时还需要保证原有功能不受影响。现有技术每次测试都需要在待测数据库和基准数据库执行用例文件,浪费测试时间,虽然现有技术测试用例中sql语句的组合可以千变万化,但是在固定输入语句的情况下,数据库表现出来的行为大都同样也是固定的,这为实现数据库的自动化测试提供了可能。
[0003]因此,现有技术还有待于改进和发展。

技术实现思路

[0004]本专利技术的主要目的在于解决现有的数据库迭代测试方法测试效率低的技术问题。
[0005]本专利技术第一方面提供了一种数据库迭代测试方法,所述数据库迭代测试方法包括:
[0006]从先前各个版本的历史数据库中选择一个版本作为基准数据库;
[0007]构造适配所述基准数据库的第一测试用例;
[0008]利用所述第一测试用例对所述基准数据库进行测试获得第一测试结果集;
[0009]校验所述第一测试结果集是否达到预期效果;
[0010]当所述第一测试结果集未达到预期效果时对所述第一测试用例进行调整,直至所述第一测试结果集达到预期效果;
[0011]存储所述第一测试结果集达到预期效果时的所述第一测试用例作为基准测试用例,以及存储达到预期效果的所述第一测试结果集作为基准结果集;
[0012]获取迭代数据库;
[0013]构造第二测试用例,所述第二测试用例包括所述第一测试用例的所有用例语句以及新增测试要点的用例语句;
[0014]利用所述第二测试用例对所述迭代数据库进行测试获得第二测试结果集;
[0015]将所述第二测试结果集和所述基准结果集进行对比,收集比对过程中出现的差异信息,并生成所述差异信息的报告文件。
[0016]在本专利技术第一方面一种可选的实施方式中,所述构造适配所述基准数据库的第一测试用例包括:
[0017]根据所述基准数据库的测试标准,生成语法模板数据,所述语法模板数据包括符合所述数据库测试标准的测试用例伪代码集以及实例数据形参定义数据;
[0018]根据所述实例数据形参定义数据以及所述待测试数据库的基本信息,生成实例数
据枚举数值;
[0019]将所述实例数据枚举数值替换至所述语法模板数据中的形参,得到第一测试用例。
[0020]在本专利技术第一方面一种可选的实施方式中,所述利用所述第一测试用例对所述基准数据库进行测试获得第一测试结果集包括:
[0021]将所述第一测试用例输入到数据库测试程序中;
[0022]对所述数据库测试程序的测试环境进行初始化;
[0023]利用所述数据库测试程序扫描所述第一测试用例中的每一条用例语句并进行分析;
[0024]根据分析结果将不同的用例语句发送给所述数据库测试程序中不同的模块执行;
[0025]获取每个所述模块的执行结果并输出不同的格式到内存暂存。
[0026]在本专利技术第一方面一种可选的实施方式中,所述校验所述第一测试结果集是否达到预期效果包括:
[0027]判断所述执行结果中是否出现非预期性的错误;
[0028]若所述执行结果中未出现非预期性错误,则判定所述第一测试结果集达到预期效果;
[0029]若所述执行结果中出现非预期性错误,则判定所述第一测试结果集未达到预期效果。
[0030]在本专利技术第一方面一种可选的实施方式中,所述当所述第一测试结果集未达到预期效果时对所述第一测试用例进行调整,直至所述第一测试结果集达到预期效果包括:
[0031]当所述第一测试结果集未达到预期效果时,所述数据库测试程序输出错误提示通知测试人员调整所述第一测试用例;
[0032]将调整后的所述第一测试用例重新输入所述数据库测试程序中,重新获取所述第一测试结果集。
[0033]在本专利技术第一方面一种可选的实施方式中,所述将所述第二测试结果集和所述基准结果集进行对比,收集比对过程中出现的差异信息,并生成所述差异信息的报告文件包括:
[0034]将所述第二测试结果集的执行结果和所述基准结果集中的基准结果进行逐条对比;
[0035]若所述执行结果在所述基准结果集中不存在对应的基准结果,则生成一条比对不存在的差异信息并记录到所述报告文件中;
[0036]若所述执行结果在所述基准结果集中存在对应的所述基准结果,则比对所述执行结果的结果数据和所述基准结果的结果数据,找出所述执行结果和所述基准结果之间具体细节的差异信息并记录到所述报告文件中。
[0037]在本专利技术第一方面一种可选的实施方式中,所述历史数据库和所述迭代数据库均为关系型数据库,所述第一测试用例和所述第二测试用例以csv文件的格式组织。
[0038]本专利技术第二方面提供了一种数据库迭代测试装置,所述数据库迭代测试装置包括:
[0039]选择模块,用于从先前各个版本的历史数据库中选择一个版本作为基准数据库;
[0040]第一构造模块,用于构造适配所述基准数据库的第一测试用例;
[0041]第一测试模块,用于利用所述第一测试用例对所述基准数据库进行测试获得第一测试结果集;
[0042]校验模块,用于校验所述第一测试结果集是否达到预期效果;
[0043]判断调整模块,用于当所述第一测试结果集未达到预期效果时对所述第一测试用例进行调整,直至所述第一测试结果集达到预期效果;
[0044]存储模块,用于存储所述第一测试结果集达到预期效果时的所述第一测试用例作为基准测试用例,以及存储达到预期效果的所述第一测试结果集作为基准结果集;
[0045]获取模块,用于获取迭代数据库;
[0046]第二构造模块,用于构造第二测试用例,所述第二测试用例包括所述第一测试用例的所有用例语句以及新增测试要点的用例语句;
[0047]第二测试模块,用于利用所述第二测试用例对所述迭代数据库进行测试获得第二测试结果集;
[0048]比对模块,用于将所述第二测试结果集和所述基准结果集进行对比,收集比对过程中出现的差异信息,并生成所述差异信息的报告文件。
[0049]本专利技术第三方面提供了一种数据库迭代测试设备,所述数据库迭代测试设备包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;
[0050]所述至少一个处理器调用所述存储器中的所述指令,以使得所述数据库迭代测试设备执行如上述任一项所述的数据库迭代测试方法。
[0051]本专利技术第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的数据库迭代测试方法。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据库迭代测试方法,其特征在于,所述数据库迭代测试方法包括:从先前各个版本的历史数据库中选择一个版本作为基准数据库;构造适配所述基准数据库的第一测试用例;利用所述第一测试用例对所述基准数据库进行测试获得第一测试结果集;校验所述第一测试结果集是否达到预期效果;当所述第一测试结果集未达到预期效果时对所述第一测试用例进行调整,直至所述第一测试结果集达到预期效果;存储所述第一测试结果集达到预期效果时的所述第一测试用例作为基准测试用例,以及存储达到预期效果的所述第一测试结果集作为基准结果集;获取迭代数据库;构造第二测试用例,所述第二测试用例包括所述第一测试用例的所有用例语句以及新增测试要点的用例语句;利用所述第二测试用例对所述迭代数据库进行测试获得第二测试结果集;将所述第二测试结果集和所述基准结果集进行对比,收集比对过程中出现的差异信息,并生成所述差异信息的报告文件。2.根据权利要求1所述的数据库迭代测试方法,其特征在于,所述构造适配所述基准数据库的第一测试用例包括:根据所述基准数据库的测试标准,生成语法模板数据,所述语法模板数据包括符合所述数据库测试标准的测试用例伪代码集以及实例数据形参定义数据;根据所述实例数据形参定义数据以及所述待测试数据库的基本信息,生成实例数据枚举数值;将所述实例数据枚举数值替换至所述语法模板数据中的形参,得到第一测试用例。3.根据权利要求1所述的数据库迭代测试方法,其特征在于,所述利用所述第一测试用例对所述基准数据库进行测试获得第一测试结果集包括:将所述第一测试用例输入到数据库测试程序中;对所述数据库测试程序的测试环境进行初始化;利用所述数据库测试程序扫描所述第一测试用例中的每一条用例语句并进行分析;根据分析结果将不同的用例语句发送给所述数据库测试程序中不同的模块执行;获取每个所述模块的执行结果并输出不同的格式到内存暂存。4.根据权利要求1所述的数据库迭代测试方法,其特征在于,所述校验所述第一测试结果集是否达到预期效果包括:判断所述执行结果中是否出现非预期性的错误;若所述执行结果中未出现非预期性错误,则判定所述第一测试结果集达到预期效果;若所述执行结果中出现非预期性错误,则判定所述第一测试结果集未达到预期效果。5.根据权利要求1所述的数据库迭代测试方法,其特征在于,所述当所述第一测试结果集未达到预期效果时对所述第一测试用例进行调整,直至所述第一测试结果集达到预期效果包括:当所述第一测试结果集未达到预期效果时,所述数据库测试程序输出错误提示通知测试人员调整所述第一测试用例;
将调整后的所述第一测试用例重新输入所述数据库测...

【专利技术属性】
技术研发人员:向家栋熊志强
申请(专利权)人:深圳市汉云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1