System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据库,更具体地涉及一种数据库极限测试用例生成方法、数据库极限测试方法。
技术介绍
1、数据库极限测试是一种评估数据库在极端条件下性能和稳定性的重要手段。但是,在实际测试过程中,需要多个操作命令或测试因素一起组合才能达到极限测试要求,且测试用例有多样不唯一的特点。
2、由于数据库极限测试场景下的测试用例有多样不唯一的特点,如果通过随机组合的方式生成测试用例,无法确定生成的测试用例是否能够覆盖到数据库极限场景,可能会出现生成的测试用例根本无法触发数据库极限场景的现象;如果通过完全正交组合的方式生成用例又会大大增加测试工作量。
3、此外,如果数据库中某些指标或处理能力发生变化时,基于已有测试用例无法准确判断哪些用例受到了影响,进而影响对测试覆盖度的精准确定。
4、综上,相关技术中数据库极限测试场景生成测试用例的方式很难兼顾测试覆盖度和测试成本,并且,对于测试指标的变化也很难通过简单、快速的方式有效保证测试覆盖度。
技术实现思路
1、鉴于上述问题,本专利技术提供了一种数据库极限测试用例生成方法、数据库极限测试方法。
2、根据本专利技术的第一个方面,提供了一种数据库极限测试用例生成方法,包括:获取触发待测试数据库产生性能问题的触发场景,其中,触发场景包括数据库硬件触发场景或数据库软件触发场景;确定与触发场景相匹配的多组数据库操作维度信息,其中,数据库操作维度信息与数据库操作维度对应,每组数据库操作维度信息包括至少一个操作参数;数
3、根据本专利技术的实施例,第一操作维度包括数据库配置和数据模型,第二操作维度包括数据库操作、执行方法和外部操作;将基于第一操作维度组成的多个主测试用例,和基于第二操作维度组成的多个从测试用例进行组合,得到多个数据库极限测试用例,包括:针对第一操作维度,正交组合与数据库配置对应的每个操作参数、和与数据模型对应的至少一个操作参数,得到m个主测试用例,m为大于1的正整数;针对第二操作维度,正交组合与数据库操作对应的每个操作参数、与执行方法对应的至少一个操作参数、和与外部操作对应的至少一个操作参数,得到n个从测试用例,n为大于1的正整数;根据主测试用例和从测试用例的数量关系,将m个主测试用例和n个从测试用例组合为多个数据库极限测试用例。
4、根据本专利技术的实施例,根据主测试用例和从测试用例的数量关系,将m个主测试用例和n个从测试用例组合为多个数据库极限测试用例,包括:在主测试用例的用例数量大于或等于从测试用例的用例数量的情况下,随机将n个从测试用例分布于m个主测试用例中,得到m个数据库极限测试用例。
5、根据本专利技术的实施例,该方法还包括:在主测试用例的用例数量小于等于从测试用例的用例数量的情况下,随机从m个主测试用例中选择(n-m)个主测试用例进行复制,得到(n-m)个复制测试用例;以及随机将m个主测试用例和(n-m)个复制测试用例分布于n个从测试用例中,得到n个数据库极限测试用例。
6、根据本专利技术的实施例,根据多个触发场景各自的多个数据库极限测试用例,生成测试用例矩阵,包括:按照触发场景、数据库操作维度以及用例标识,根据多个触发场景各自的多个数据库极限测试用例,生成测试用例矩阵;其中,数据库硬件触发场景包括以下至少其中之一:内存、连接池、线程池;数据库软件触发场景包括以下至少其中之一:锁、分布式数据库管理组件。
7、根据本专利技术的实施例,该方法还包括:在确定针对第一触发场景的多个数据库极限测试用例、与针对第二触发场景的多个数据库极限测试用例之间存在相似或重复的数据库极限测试用例的情况下,将相似或重复的数据库极限测试用例作为多场景测试用例,以便在执行多场景测试用例时同步完成对第一触发场景和第二触发场景的数据库极限测试。
8、根据本专利技术的实施例,该方法还包括:响应于检测到目标触发场景下目标操作参数或目标数据库操作维度发生变化,从测试用例矩阵中确定至少一个待调整数据库极限测试用例;以及利用目标操作参数或目标数据库操作维度,对至少一个待调整数据库极限测试用例进行调整,得到至少一个调整后的数据库极限测试用例。
9、本专利技术的第二方面提供了一种数据库极限测试方法,包括:响应于检测到针对于目标触发场景、目标操作参数或目标数据库操作维度的测试请求,从测试用例矩阵中获取与目标触发场景、目标操作参数或目标数据库操作维度相关的至少一个数据库极限测试用例;其中,测试用例矩阵是基于数据库极限测试用例生成方法生成的;在待测试数据库中依次执行至少一个数据库极限测试用例,生成至少一个数据库极限测试结果。
10、本专利技术的第三方面提供了一种数据库极限测试用例生成装置,包括:获取模块,用于获取触发待测试数据库产生性能问题的触发场景,其中,触发场景包括数据库硬件触发场景或数据库软件触发场景。维度确定模块,用于确定与触发场景相匹配的多组数据库操作维度信息,其中,数据库操作维度信息与数据库操作维度对应,每组数据库操作维度信息包括至少一个操作参数;数据库操作维度包括第一操作维度和第二操作维度。用例组合模块,用于将基于第一操作维度组成的多个主测试用例,和基于第二操作维度组成的多个从测试用例进行组合,得到多个数据库极限测试用例。矩阵生成模块,用于根据多个触发场景各自的多个数据库极限测试用例,生成测试用例矩阵,其中,测试用例矩阵用于存储针对每个触发场景的数据库极限测试用例。
11、本专利技术的第四方面提供了一种数据库极限测试装置,包括:触发模块,用于响应于检测到针对于目标触发场景、目标操作参数或目标数据库操作维度的测试请求,从测试用例矩阵中获取与目标触发场景、目标操作参数或目标数据库操作维度相关的至少一个数据库极限测试用例;其中,测试用例矩阵是基于数据库极限测试用例生成方法生成的;测试模块,用于在待测试数据库中依次执行至少一个数据库极限测试用例,生成至少一个数据库极限测试结果。
12、本专利技术的第五方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个计算机程序,当一个或多个处理器执行一个或多个计算机程序时以实现根据上述数据库极限测试用例生成方法或数据库极限测试方法的步骤。
13、本专利技术的第六方面还提供了一种计算机可读存储介质,其上存储有计算机程序或指令,计算机程序或指令被处理器执行时实现根据上述数据库极限测试用例生成方法或数据库极限测试方法的步骤。
14、本专利技术的第七方面还提供了一种计算机程序产品,包括计算机程序或指令,计算机程序或指令被处理器执行时实现根据上述数据库极限测试用例生成方法或数据库极限测试方法的步骤。
15、本专利技术的实施例通过对第一操作维本文档来自技高网...
【技术保护点】
1.一种数据库极限测试用例生成方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述第一操作维度包括数据库配置和数据模型,所述第二操作维度包括数据库操作、执行方法和外部操作;
3.根据权利要求2所述的方法,其特征在于,所述根据所述主测试用例和所述从测试用例的数量关系,将所述M个主测试用例和所述N个从测试用例组合为所述多个数据库极限测试用例,包括:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述根据多个所述触发场景各自的所述多个数据库极限测试用例,生成测试用例矩阵,包括:
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
8.一种数据库极限测试方法,其特征在于,所述方法包括:
9.一种电子设备,其特征在于,所述电子设备包括:
10.一种计算机可读存储介质,其特征在于,其上存储有计算机程序或指令,其特征在于,所述计算机程序或
...【技术特征摘要】
1.一种数据库极限测试用例生成方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述第一操作维度包括数据库配置和数据模型,所述第二操作维度包括数据库操作、执行方法和外部操作;
3.根据权利要求2所述的方法,其特征在于,所述根据所述主测试用例和所述从测试用例的数量关系,将所述m个主测试用例和所述n个从测试用例组合为所述多个数据库极限测试用例,包括:
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述...
【专利技术属性】
技术研发人员:张娜,
申请(专利权)人:苏州吉呗思数据技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。