数据库测试方法、数据库系统、电子设备和存储介质与流程

文档序号:34107727发布日期:2023-05-10 20:56阅读:31来源:国知局
数据库测试方法、数据库系统、电子设备和存储介质与流程

本发明涉及数据库,尤其涉及一种数据库测试方法、数据库系统、电子设备和存储介质。


背景技术:

1、分布式数据库系统一般由多模块组成,多模块之间的协调工作需要进行大量的消息交互。分布式数据库系统在正常使用之前,需对各模块进行测试,各模块测试通过后,方可正式使用。

2、在分布式数据库系统中,仍然存在很多未解决的问题,比较突出的两个问题如下:

3、第一,简单地进行模糊数据变异,一条消息通过模糊测试就可以产生百万级的测试用例,这么多的测试用例执行一遍就需要占用一台服务器连续运行几天甚至几十天,极大地占用了资源。

4、第二,大量的测试用例执行之后,缺乏全面的有效用例判别机制,仅仅进行简单的结果校验或者覆盖率比较,并不能有效地提高分布式数据库系统的自动化测试效率。


技术实现思路

1、为解决现有分布式数据库系统测试过程资源占用率大、测试判别机制简单的技术问题,本发明实施例提供一种数据库测试方法、数据库系统、电子设备和存储介质。

2、本发明实施例的技术方案是这样实现的:

3、本发明实施例提供了一种数据库测试方法,方法包括:

4、获取数据变异引导文件;所述数据变异引导文件包含测试消息的组成、字段类型、范围和校验值信息;

5、基于所述数据变异引导文件,利用变异规则对测试消息中的每个字段进行变异;

6、将变异后的每个字段进行组合,获得测试用例消息;

7、利用所述测试用例消息,对分布式数据库进行测试。

8、在一实施例中,所述测试消息的属性包括:消息字段级别、消息字段名称、字段类型、字段类型长度、字段正常值的最小值、字段正常值的最大值、字段变异规则的类型、消息执行后的返回值列表。

9、在一实施例中,所述基于所述数据变异引导文件,利用变异规则对测试消息中的每个字段进行变异,包括:

10、对于测试消息中字段类型为整形字段的每个字段,基于范围边界值、类型边界值和特殊5值进行变异;

11、对于测试消息中字段类型为字符串字段的每个字段,根据每个字段的长度进行变长、变短和/或加入一些特殊字符进行变异;

12、对于测试消息中字段类型为特殊字段的每个字段,按照特殊字段变异规则进行变异。

13、在一实施例中,所述将变异后的每个字段进行组合,获得测试用例消息,包括:0对于测试用例消息中的异常结果消息采用以下至少一种方式进行组合:将每个字段的边

14、界值按照纵列的规则进行组合、将相邻字段的变异数据进行消息组合、所有字段按照全排列的方式进行组合。

15、在一实施例中,所述利用所述测试用例消息,对分布式数据库进行测试,包括:

16、获取测试场景;

17、5根据测试场景,确定对应的测试用例消息;

18、利用对应的测试用例消息,对分布式数据库进行测试。

19、在一实施例中,所述利用所述测试用例消息,对分布式数据库进行测试之后,包括:

20、根据有效用例集提取规则提取有效用例集;

21、对所述有效用例集进行整理归纳;

22、0将整理归纳后的有效用例集对接到dailyci中进行每日测试。

23、在一实施例中,所述根据有效用例集提取规则提取有效用例集,包括:

24、检查测试用例消息是否执行成功;

25、在测试用例消息执行失败的情况下,进行完整性分析;

26、在完整性分析正确的情况下,进行结果分析;

27、5在结果分析正确的情况下,进行core分析;

28、在存在core文件的情况下,将当前测试用例消息增加到有效用例集;

29、在测试用例消息执行成功的情况下,进行覆盖率分析;

30、在覆盖率提升的情况下,将当前测试用例消息增加到有效用例集;

31、检查内存是否越界;

32、0在内存有越界的情况下,将当前测试用例消息增加到有效用例集;

33、在内存没有越界的情况下,进行内存非法读写分析;

34、在有内存非法读写的情况下,将当前测试用例消息增加到有效用例集。

35、本发明实施例还提供了一种数据库系统,所述数据库系统包括:

36、获取模块,用于获取数据变异引导文件;所述数据变异引导文件包含测试消息的组成、字段类型、范围和校验值信息;

37、用例生成模块,用于基于所述数据变异引导文件,利用变异规则对测试消息中的每个字段进行变异;

38、用例组合模块,用于将变异后的每个字段进行组合,获得测试用例消息;

39、用例执行模块,用于利用所述测试用例消息,对分布式数据库进行测试。

40、本发明实施例还提供了一种电子设备,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,

41、处理器用于运行计算机程序时,执行上述任一方法的步骤。

42、本发明实施例还提供了一种存储介质,存储介质中存储有计算机程序,计算机程序被处理器执行时,实现上述任一方法的步骤。

43、本发明实施例提供的数据库测试方法、数据库系统、电子设备和存储介质,获取数据变异引导文件;所述数据变异引导文件包含测试消息的组成、字段类型、范围和校验值信息;基于所述数据变异引导文件,利用变异规则对测试消息中的每个字段进行变异;将变异后的每个字段进行组合,获得测试用例消息;利用所述测试用例消息,对分布式数据库进行测试。本发明提供的方案将测试消息模型化,从而使得数据变异小型化、全面化,减少了无效测试用例消息的生成,组合后的测试用例消息可适用于不同测试场景,保证了测试数据的全面性,又保证了测试场景的多元化。



技术特征:

1.一种数据库测试方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述测试消息的属性包括:消息字段级别、消息字段名称、字段类型、字段类型长度、字段正常值的最小值、字段正常值的最大值、字段变异规则的类型、消息执行后的返回值列表。

3.根据权利要求1所述的方法,其特征在于,所述基于所述数据变异引导文件,利用变异规则对测试消息中的每个字段进行变异,包括:

4.根据权利要求1所述的方法,其特征在于,所述将变异后的每个字段进行组合,获得测试用例消息,包括:

5.根据权利要求1所述的方法,其特征在于,所述利用所述测试用例消息,对分布式数据库进行测试,包括:

6.根据权利要求1所述的方法,其特征在于,所述利用所述测试用例消息,对分布式数据库进行测试之后,包括:

7.根据权利要求6所述的方法,其特征在于,所述根据有效用例集提取规则提取有效用例集,包括:

8.一种数据库系统,其特征在于,所述数据库系统包括:

9.一种电子设备,其特征在于,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器;其中,

10.一种存储介质,所述存储介质中存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至7任一项所述方法的步骤。


技术总结
本发明公开了一种数据库测试方法、数据库系统、电子设备和存储介质。其中,方法包括获取数据变异引导文件;所述数据变异引导文件包含测试消息的组成、字段类型、范围和校验值信息;基于所述数据变异引导文件,利用变异规则对测试消息中的每个字段进行变异;将变异后的每个字段进行组合,获得测试用例消息;利用所述测试用例消息,对分布式数据库进行测试。本发明提供的方案将测试消息模型化,从而使得数据变异小型化、全面化,减少了无效测试用例消息的生成,组合后的测试用例消息可适用于不同测试场景,保证了测试数据的全面性,又保证了测试场景的多元化。

技术研发人员:任济双,徐文锋,张鹏,付裕
受保护的技术使用者:金篆信科有限责任公司
技术研发日:
技术公布日:2024/1/12
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1