1 .一种混沌SQL语句全自动化测试系统,其特征在于,所述系统包括:测试配置管理模
块、测试任务执行模块以及统计日志评估模块;其中,
所述测试配置管理模块,用于获取测试配置文件,并将所述测试配置文件发送至所述
测试任务执行模块;
所述测试任务执行模块,用于根据所述测试配置文件生成目标SQL语句,并执行所述目
标SQL语句;在执行所述目标SQL语句的过程中,生成包括所述目标SQL语句的数据特征的统
计日志,并将所述统计日志发送至所述统计日志评估模块;
所述统计日志评估模块,用于对所述统计日志进行动态评估,并将评估结果发送至所
述测试配置管理模块,以使所述测试配置管理模块根据所述评估结果对所述测试配置文件
进行调整。
2 .根据权利要求1所述的系统,其特征在于,所述测试配置文件包括函数配置文件、概
率配置文件以及语法配置文件;所述测试配置管理模块包括函数配置单元、概率配置单元
以及语法配置单元,其中,
所述函数配置单元,用于确定待测试函数,并根据所述待测试函数的输入参数数据类
型和输出参数数据类型生成所述函数配置文件;
所述概率配置单元,用于确定所述目标SQL语句生成的概率,并根据所述概率生成所述
概率配置文件;其中,所述目标SQL语句包括DDL语句、DQL语句以及DML语句;
所述语法配置单元,用于基于巴克斯范式的分组规则和分隔规则生成所述DDL语句以
及所述DML语句的语法配置文件。
3 .根据权利要求1所述的系统,其特征在于,所述测试任务执行模块包括元数据节点、
语句生成节点、语句执行节点以及语句统计节点,其中,
所述元数据节点,用于确定库表结构元数据,并从所述测试配置管理模块读取所述测
试配置文件,将所述库表结构元数据和所述测试配置文件中的测试配置信息发送至所述语
句生成节点;其中,所述测试配置信息包括概率、函数规则以及语法规则;
所述语句生成节点,用于根据所述库表结构元数据和所述测试配置信息生成所述目标
SQL语句,并将所述目标SQL语句发送至所述语句执行节点;
所述语句执行节点,用于执行所述目标SQL语句,得到所述目标SQL语句的执行结果;
所述语句统计节点,用于在所述语句执行节点执行所述目标SQL语句的过程中,生成包
括所述目标SQL语句的数据特征的统计日志。
4 .根据权利要求3所述的系统,其特征在于,所述元数据节点还用于:
从所述语句执行节点获取执行成功的目标SQL语句反馈的关联条件,并将所述关联条
件发送至所述语句生成节点;
所述语句生成节点,还用于:
根据所述库表结构元数据、所述测试配置信息和所述关联条件按照预设顺序生成所述
目标SQL语句;其中,所述预设顺序依次对数据库进行增、改、查、删操作对应的目标SQL语
句。
5 .根据权利要求4所述的系统,其特征在于,所述语句生成节点具体用于:
根据所述库表结构元数据和所述测试配置信息生成DDL语句;
根据所述库表结构元数据、所述测试配置信息和执行成功的DDL语句反馈的关联条件
权 利 要 求 书
1/2 页
2
评论