[发明专利]基于动态评估的并行化分布式数据库引擎测试方法及系统在审
申请号: | 202111592199.8 | 申请日: | 2021-12-23 |
公开(公告)号: | CN114356758A | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 赵伟;丁骁阳;刘利兵 | 申请(专利权)人: | 天津南大通用数据技术股份有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 天津企兴智财知识产权代理有限公司 12226 | 代理人: | 薛萌萌 |
地址: | 300384 天津市滨海新区华*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 动态 评估 并行 化分 数据库 引擎 测试 方法 系统 | ||
1.基于动态评估的并行化分布式数据库引擎测试方法,其特征在于:具体步骤如下:
S1、服务端进行测试任务前的准备,设置多个测试集群,根据测试任务确定需要测试的用例,并将需要测试的用例分成与测试集群个数对应的用例组,每个测试集群对应测试一组用例组,保证每一组中的用例估算耗时总和接近,每组用例组动态生成用于后期测试的执行代码;
S2、服务端正式执行测试任务,以并行方式在多个测试集群上部署数据库,执行用例组的执行代码,每个测试集群组中的用例执行步骤为:读取并执行用例组,返回结果,将返回结果与用例预期结果对比,获取对比结果,记录用例用时,将每个用例执行及对比时获取的信息记录到一个对应的记录对象中;
S3、所有用例执行结束后,将步骤S25中的记录对象导入数据库,数据库中设置用例结果表,用例结果表记录记录对象中的信息。
2.根据权利要求1所述的基于动态评估的并行化分布式数据库引擎测试方法,其特征在于:步骤S1中,服务端进行测试任务前的准备,设置多个测试集群,根据测试任务确定需要测试的用例,并将需要测试的用例分成与测试集群个数对应的用例组,保证每一组中的用例估算耗时总和接近,每组用例组动态生成用于后期测试的执行代码,具体步骤如下:
S11、查询当前服务端资源余量,根据内存占用情况创建N个测试集群;
S12、根据测试任务确定测试需要执行的M条用例,将需要执行的M条用例逐条估算历史平均耗时,获得每条用例的“估算耗时”;
S13、进行用例分组计算,将M条用例分成N组用例组,并尽量保证每一组中的用例估算耗时总和接近;
S14、根据步骤S13中分组生成的N组用例组,动态生成N组用例组的执行代码;
所述测试集群个数N为2-10个,所述测试集群个数为2的整数倍,用例组的个数与测试集群的个数对应设置。
3.根据权利要求2所述的基于动态评估的并行化分布式数据库引擎测试方法,其特征在于:步骤S12中,将需要执行的用例逐条估算历史平均耗时,具体方法为:计算每条用例近10次执行时的平均用时,获得每条用例的“估算耗时”。
4.根据权利要求2所述的基于动态评估的并行化分布式数据库引擎测试方法,其特征在于:步骤S13中,用例分组具体方法为:从动态规划法、快速分发法两种分组算法中选择一种,以获得N组用例中每一组中的用例估算耗时总和接近;
所述动态规划法具体方法为模拟M条用例所有的分组可能,寻找每一组中的用例估算耗时总和接近的最优解;
所述快速分发法具体方法为将M条用例安装估算耗时从大到小排列,依次分发到当前估算耗时最小的组中;
从动态规划法、快速分发法两种分组算法中选择一种的选择具体方法为:
S131、计算M条用例耗时最多用例与耗时最少的用例的耗时差值;
S132、计算耗时差值与用例总数M的比值Q;
S133、设定Q=2作为阈值,Q高于2.0时选择动态规划法分组,Q低于2.0时选择快速分发法分组。
5.根据权利要求2所述的基于动态评估的并行化分布式数据库引擎测试方法,其特征在于:步骤S2中,读取并执行用例组,返回结果,将返回结果与用例预期结果对比,获取对比结果,记录用例用时,将每个用例执行及对比时获取的信息记录到一个对应的记录对象中,具体方法如下:
S21、读取用例中作者预先添加的用例标签,开始计时,执行用例标签中指定的测试前准备工作,测试前准备工作包括调整集群参数,重启服务;
S22、解析用例内容,将整个用例从文本转化为程序内的语句对象,并解析用例中设置的定制化行为;
S23、逐条执行用例语句,返回结果暂存在内存中;
S24、将步骤S23中返回结果与用例预期结果对比,配置好根据测试需求制定的内容过滤规则,开始进行字面值和数据类型的比对,对比结束,获得对比结果,按照步骤S22中的定制化行为对测试集群进行还原;
S25、结束计时,将每个用例对应信息记录到对应的一个记录对象内,并将用例中客户需要的内容写入N个测试集群公用的结果信息文件中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津南大通用数据技术股份有限公司,未经天津南大通用数据技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111592199.8/1.html,转载请声明来源钻瓜专利网。