CN112948266B - 一种数据库语法测试系统、方法、装置、设备及存储介质 - Google Patents
一种数据库语法测试系统、方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112948266B CN112948266B CN202110347814.2A CN202110347814A CN112948266B CN 112948266 B CN112948266 B CN 112948266B CN 202110347814 A CN202110347814 A CN 202110347814A CN 112948266 B CN112948266 B CN 112948266B
- Authority
- CN
- China
- Prior art keywords
- test
- test case
- case
- module
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明实施例涉及自动程序设计技术领域,公开了一种数据库语法测试系统、方法、装置、设备及存储介质,数据库语法测试系统包括:配置模块和测试执行模块,其中:所述配置模块,用于获取待测试语句的配置参数,并将各所述配置参数存储至数据库中;所述测试执行模块,用于存储各测试案例的共享架构,所述配置参数包括所述测试案例执行所需的程序代码。通过对测试流程得抽象,基于该测试框架,使得简单高效的实现对多个数据库的语法兼容性测试;提供了灵活的、多维度的参数配置,能够支持数据库语法测试各个场景的配置要求,从而满足不同测试场景的需求,简化案例设计,降低测试人员门槛。
Description
技术领域
本发明实施例涉及自动程序设计技术领域,尤其涉及一种数据库语法测试系统、方法、装置、设备及存储介质。
背景技术
在企业级PAAS平台产品国产化过程中,存在对多家数据库的适配场景。平台需要支持和兼容多个国产数据库的能力,则对各个国产数据库进行语法兼容性测试变成一个基础环节。在对数据库进行语法测试国产中,面对丰富的数据库语法,测试人员必须编写大量的自动化测试案例来覆盖各种语法点,存在代码冗余,效率低,并且对测试人员要求较高,需要掌握至少一门开发语言。
具体的,每个案例的编写必须通过某一种开发语言实现,需要测试人员至少掌握一种开发语言,对测试人员要求较高。每个案例逻辑基本固定,实际上就是对数据库某一语法SQL语句的调用执行,通过一案例覆盖一语法的方式编写案例,存在大量冗余代码,实际可以抽象编写代码方式不够灵活,添加或修改案例需要更新服务器。
发明内容
本发明实施例提供了一种数据库语法测试系统、方法、装置、设备及存储介质,以实现提高数据库语法测试的兼容性,降低测试人员门槛。
第一方面,本发明实施例提供了一种数据库语法测试系统,包括:配置模块和测试执行模块,其中:
所述配置模块,用于获取待测试语句的配置参数,并将各所述配置参数存储至数据库中;
所述测试执行模块,用于存储各测试案例的共享架构,所述配置参数包括所述测试案例执行所需的程序代码。
可选的,在上述方案的基础上,所述测试执行模块包括统一执行子模块和语句接口模块,其中:
统一执行子模块,用于获取所述配置参数关联的目标测试案例,基于所述配置参数和所述目标测试案例生成待测试语句;
所述语句接口模块,用于读取所述待测试语句的关联测试文件,并执行测试操作,得到测试结果。
可选的,在上述方案的基础上,所述测试执行模块还包括格式化输出模块,用于:
将所述测试结果转换为设定格式后输出。
可选的,在上述方案的基础上,所述获取所述配置参数关联的目标测试案例,包括:
根据测试指令确定测试案例标识,基于所述测试案例标识确定所述配置参数关联的目标测试案例。
可选的,在上述方案的基础上,所述根据测试指令确定测试案例标识,包括:
获取所述测试指令中包含的测试类型,根据预先设置的类型标识对应关系确定所述测试案例标识。
可选的,在上述方案的基础上,所述配置参数包括所述测试案例的案例标识、前置条件结构化查询语言的标识、测试结构化查询语言的标识,后置清理结构化查询语言的标识。
第一方面,本发明实施例提供了一种数据库语法测试方法,应用于本发明任意实施例所提供的数据库语法测试系统,所述方法包括:
响应于检测到的测试指令,获取所述测试指令关联的配置参数;
确定所述测试指令关联的目标测试案例;
基于所述目标测试案例和所述配置参数确定待测试语句;
对所述待测试语句进行测试,得到测试结果并输出。
可选的,在上述方案的基础上,所述确定所述测试指令关联的目标测试案例,包括:
获取所述测试指令中包含的测试类型;
根据预先设置的类型标识对应关系确定目标测试案例标识,基于所述目标测试案例标识确定所述测试指令关联的目标测试案例。
可选的,在上述方案的基础上,所述对所述待测试语句进行测试,包括:
读取所述待测试语句的关联测试文件,执行测试操作。
可选的,在上述方案的基础上,还包括:
设置基础测试案例,基于所述基础测试案例的语法结构确定所述基础测试案例的共享架构。
可选的,在上述方案的基础上,还包括:
确定所述基础测试案例的测试类型,将所述测试类型与所述基础测试案例的测试案例标识对应存储。
可选的,在上述方案的基础上,所述得到测试结果并输出,包括:
将所述测试结果转换为设定格式后输出。
第三方面,本发明实施例还提供了一种数据库语法测试装置,包括:
配置参数获取模块,用于响应于检测到的测试指令,获取所述测试指令关联的配置参数;
目标案例确定模块,用于确定所述测试指令关联的目标测试案例;
待测试语句生成模块,用于基于所述目标测试案例和所述配置参数确定待测试语句;
测试执行模块,用于对所述待测试语句进行测试,得到测试结果并输出。
可选的,在上述方案的基础上,目标案例确定模块具体用于:
获取所述测试指令中包含的测试类型;
根据预先设置的类型标识对应关系确定目标测试案例标识,基于所述目标测试案例标识确定所述测试指令关联的目标测试案例。
可选的,在上述方案的基础上,测试执行模块具体用于:
读取所述待测试语句的关联测试文件,执行测试操作。
可选的,在上述方案的基础上,测试执行模块具体用于:
将所述测试结果转换为设定格式后输出。
可选的,在上述方案的基础上,测试案例设置模块,用于:
设置基础测试案例,基于所述基础测试案例的语法结构确定所述基础测试案例的共享架构。
可选的,在上述方案的基础上,测试案例存储模块,用于:
确定所述基础测试案例的测试类型,将所述测试类型与所述基础测试案例的测试案例标识对应存储。
第四方面,本发明实施例还提供了一种计算机设备,设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如本发明任意实施例所提供的数据库语法测试方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的数据库语法测试方法。
本发明实施例提供的数据库语法测试系统包括:配置模块和测试执行模块,其中:所述配置模块,用于获取待测试语句的配置参数,并将各所述配置参数存储至数据库中;所述测试执行模块,用于存储各测试案例的共享架构,所述配置参数包括所述测试案例执行所需的程序代码。通过对测试流程得抽象,基于该测试框架,使得简单高效的实现对多个数据库的语法兼容性测试;提供了灵活的、多维度的参数配置,能够支持数据库语法测试各个场景的配置要求,从而满足不同测试场景的需求,简化案例设计,降低测试人员门槛。
附图说明
图1是本发明实施例一所提供的一种数据库语法测试系统的结构示意图;
图2是本发明实施例二所提供的一种数据库语法测试方法的流程示意图;
图3是本发明实施例三所提供的一种案例模型设计的示意图;
图4是本发明实施例四所提供的一种数据库语法测试装置的结构示意图;
图5是本发明实施例五所提供的一种计算机设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一所提供的一种数据库语法测试系统的结构示意图。本实施例可适用于对数据库语法兼容性测试时的情形。如图1所示,数据库语法测试系统包括配置模块和测试执行模块,其中:
所述配置模块,用于获取待测试语句的配置参数,并将各所述配置参数存储至数据库中;
所述测试执行模块,用于存储各测试案例的共享架构,所述配置参数包括所述测试案例执行所需的程序代码。
在本实施例中,数据库语法测试系统包括配置模块110和测试执行模块120,配置模块110中为待测试语句所需配置的配置参数,当需要进行语句测试时,只需在配置模块110中配置该待测试语句相应的配置参数即可。测试执行模块120中存储有各个测试实例执行所需的共享架构,如各测试案例的执行逻辑。虽然各待测试语句的执行参数不同,但是各待测试语句执行时具有共用的信息,如各接口之间的调用关系等。可选的,将各测试案例的共享信息存储在共享模块中,供各待测试语句使用,提高了软件代码的复用性,减少了测试人员的测试难度,大大的提高了测试人员的效率。
示例性的,当有数据库语法的测试需求时,用户可以通过用户设备向数据库语法测试系统发起测试指令,数据库语法测试系统根据测试指令中携带的配置参数生成待测试语句执行语法测试,得到测试结果。
本发明实施例提供的数据库语法测试系统包括:配置模块和测试执行模块,其中:所述配置模块,用于获取待测试语句的配置参数,并将各所述配置参数存储至数据库中;所述测试执行模块,用于存储各测试案例的共享架构,所述配置参数包括所述测试案例执行所需的程序代码。通过对测试流程得抽象,基于该测试框架,使得简单高效的实现对多个数据库的语法兼容性测试;提供了灵活的、多维度的参数配置,能够支持数据库语法测试各个场景的配置要求,从而满足不同测试场景的需求,简化案例设计,降低测试人员门槛。
在本发明的一种实施方式中,所述测试执行模块包括统一执行子模块和语句接口模块,其中:
统一执行子模块,用于获取所述配置参数关联的目标测试案例,基于所述配置参数和所述目标测试案例生成待测试语句;
所述语句接口模块,用于读取所述待测试语句的关联测试文件,并执行测试操作,得到测试结果。
可选的,将测试执行模块具体划分为统一执行子模块和语句结构模块,统一执行模块用于根据配置项进行测试案例的执行,语句接口模块用于根据约定读取结构化查询语言文件。具体的,统一执行子模块获取所述配置参数关联的目标测试案例,基于所述配置参数和所述目标测试案例生成待测试语句;所述语句接口模块读取所述待测试语句的关联测试文件,并执行测试操作,得到测试结果。
为将测试结果输出,还可以在测试执行模块中设置测试结果输出模块,用于将测试结果输出。可选的,可以直接将测试结果输出,还可以将测试结果的格式统一后输出。优选的,将测试结果输出模块具体化为格式化输出模块。即所述测试执行模块还包括格式化输出模块,用于:将所述测试结果转换为设定格式后输出。其中,设定格式可以根据实际需求设置,在此不做限制。具体的输出内容可以包括运行结果、运行时间、所需参数等信息。
在本发明的一种实施方式中,所述获取所述配置参数关联的目标测试案例,包括:
根据测试指令确定目标测试案例标识,基于所述测试案例标识确定所述配置参数关联的目标测试案例。
可选的,用户可以在输入配置参数时选取一测试案例作为目标测试案例,数据库语法测试系统根据测试指令中携带的测试案例确定目标测试案例。用户还可以选择测试案例类型,数据库语法测试系统根据测试指令中携带的测试案例类型确定目标测试案例。可选的,测试案例以标识的形式存储及展示。在接收到测试指令后,确定目标测试案例标识,将目标测试案例标识对应的测试案例作为目标测试案例。
在上述方案的基础上,所述根据测试指令确定目标测试案例标识,包括:
获取所述测试指令中包含的测试类型,根据预先设置的类型标识对应关系确定所述目标测试案例标识。
为简化测试人员的操作,可以将测试类型或测试模板名称显示在配置界面上,测试人员通过选择测试类型或测试模板名称触发测试指令,数据库语法测试系统根据测试指令中携带的测试类型确定测试案例标识,以确定目标测试案例。示例性的,假设测试指令中包含的测试类型为测试类型A,则将测试类型A对应的测试案例标识1作为目标测试案例标识,即将测试案例1作为目标测试案例。
可选的,所述配置参数包括所述目标测试案例的案例标识、前置条件结构化查询语言的标识、测试结构化查询语言的标识,后置清理结构化查询语言的标识。
示例性的,配置参数包括如下五项:
(1)dbtest.modules:自定义测试模块
(2)dbtest.${module_no}.cases:自定义模块包含的案例编号(即案例标识)
(3)dbtest.${module_no}.${case_no}.before.sqlmap.ids:自定义前置条件SQL语句的Map ID(即前置条件结构化查询语言的标识)
(4)dbtest.${module_no}.${case_no}.test.sqlmap.ids:自定义测试SQL语句的Map ID(即测试结构化查询语言的标识)
(5)dbtest.${module_no}.${case_no}.after.sqlmap.ids:自定义后置清理SQL语句的Map ID(即后置清理结构化查询语言的标识)
基于上述五项配置参数完成一个待测试语句的配置。
实施例二
图2是本发明实施例二所提供的一种数据库语法测试方法的流程示意图。该方法可以由数据库语法测试装置执行,该数据库语法测试装置可以采用软件和/或硬件的方式实现,例如,该数据库语法测试装置可配置于数据库语法测试系统中。
如图2所示,该方法包括:
S210、响应于检测到的测试指令,获取所述测试指令关联的配置参数。
在本实施例中,数据库语法测试系统包括配置模块和测试执行模块,当需要进行语句测试时,测试人员可以通过配置模块为待测试语句进行配置参数的设置。示例性的,当有数据库语法的测试需求时,用户可以通过用户设备向该数据库语法测试装置发起测试指令,该数据库语法测试装置根据测试指令中携带的配置参数生成待测试语句执行语法测试,得到测试结果。
可选的,所述配置参数包括所述目标测试案例的案例标识、前置条件结构化查询语言的标识、测试结构化查询语言的标识,后置清理结构化查询语言的标识。
S220、确定所述测试指令关联的目标测试案例。
可选的,用户可以在输入配置参数时选取一测试案例作为目标测试案例,数据库语法测试系统根据测试指令中携带的测试案例确定目标测试案例。用户还可以选择测试案例类型,数据库语法测试系统根据测试指令中携带的测试案例类型确定目标测试案例。可选的,测试案例以标识的形式存储及展示。在接收到测试指令后,确定目标测试案例标识,将目标测试案例标识对应的测试案例作为目标测试案例。
在本发明的一种实施方式中,所述确定所述测试指令关联的目标测试案例,包括:
获取所述测试指令中包含的测试类型;
根据预先设置的类型标识对应关系确定目标测试案例标识,基于所述目标测试案例标识确定所述测试指令关联的目标测试案例。
为简化测试人员的操作,可以将测试类型或测试模板名称显示在配置界面上,测试人员通过选择测试类型或测试模板名称触发测试指令,数据库语法测试系统根据测试指令中携带的测试类型确定测试案例标识,以确定目标测试案例。示例性的,假设测试指令中包含的测试类型为测试类型A,则将测试类型A对应的测试案例标识1作为目标测试案例标识,即将测试案例1作为目标测试案例。
S230、基于所述目标测试案例和所述配置参数确定待测试语句。
将配置参数作为目标测试案例的程序代码的执行参数,得到待测试语句。
S240、对所述待测试语句进行测试,得到测试结果并输出。
可选的,所述对所述待测试语句进行测试,包括:
读取所述待测试语句的关联测试文件,执行测试操作。
在本实施例中,可以直接将测试结果输出,还可以将测试结果的格式统一后输出。优选的,将测试结果输出模块具体化为格式化输出模块。
即所述得到测试结果并输出,包括:
将所述测试结果转换为设定格式后输出。
其中,设定格式可以根据实际需求设置,在此不做限制。具体的输出内容可以包括运行结果、运行时间、所需参数等信息。
本发明实施例通过响应于检测到的测试指令,获取所述测试指令关联的配置参数;确定所述测试指令关联的目标测试案例;基于所述目标测试案例和所述配置参数确定待测试语句;对所述待测试语句进行测试,得到测试结果并输出。通过对测试流程得抽象,基于该测试框架,使得简单高效的实现对多个数据库的语法兼容性测试;提供了灵活的、多维度的参数配置,能够支持数据库语法测试各个场景的配置要求,从而满足不同测试场景的需求,简化案例设计,降低测试人员门槛。
可选的,在上述方案的基础上,还包括:
设置基础测试案例,基于所述基础测试案例的语法结构确定所述基础测试案例的共享架构。
可以理解的是,根据通用测试案例的语法结构构建测试案例的共享架构,得到多个基础测试案例。具体的测试案例的设置数量及具体分类可以根据实际需求设定,在此不做限定。
可选的,在上述方案的基础上,还包括:确定所述基础测试案例的测试类型,将所述测试类型与所述基础测试案例的测试案例标识对应存储。
构建得到多个基础测试案例后,可以将基础测试案例和测试案例标识对应存储,为简化测试人员操作,还可以将基础测试案例、测试案例标识和测试类型关联存储,使得测试人员仅选择测试类型即可选择到正确的目标测试案例。
实施例三
本实施例在上述实施例的基础上,提供了一种优选实施例。
本发明实施例提供的数据语法兼容性测试框架通过对测试流程的抽象,基于该测试框架,使得企业级PAAS开发平台简单、高效的实现对多个数据库的语法兼容性测试;其二,提供灵活的、多维度的参数配置,能够支持数据库语法测试各个场景的各配置要求,从而满足不同测试场景的需求,简化案例设计,降低测试人员门槛。
本发明实施例提供的数据语法兼容性测试框架设计主要包括:
1、统一交易码设计
作为统一测试入口,框架会读取测试案例上下文配置,驱动整个测试流程。
2、配置项设计
为测试人员提供可配置的测试案例组织方式,提高测试效率,降低测试门槛
(1)dbtest.modules:自定义测试模块
(2)dbtest.${module_no}.cases:自定义模块包含的案例编号
(3)dbtest.${module_no}.${case_no}.before.sqlmap.ids:自定义前置条件SQL语句的Map ID
(4)dbtest.${module_no}.${case_no}.test.sqlmap.ids:自定义测试SQL语句的Map ID
(5)dbtest.${module_no}.${case_no}.after.sqlmap.ids:自定义后置清理SQL语句的Map ID
3、框架程序设计
(1)配置加载模块:用于加载配置项
(2)统一执行模块:根据配置项进行案例的执行
(3)SQL接口模块:根据约定读取SQL文件
(4)格式化输出模块:统一按照设计好的格式输出测试结果
4、案例模型设计
为测试人员提供统一的案例结构。图3是本发明实施例三所提供的一种案例模型设计的示意图。图3中示意性的示出了各测试案例的设置模块及内容。
本发明实施例提供的数据语法兼容性测试框架降低了测试人员要求,配置化案例维护,提高测试效率,简化案例设计,统一的格式化输出;数据库语法兼容性测试框架的配置支持,保证了在统一使用该测试框架的前提下,可以根据数据库语法的个性化需求,灵活配置案例和新增案例,无需代码改动,简化了测试复杂度。
实施例四
图4是本发明实施例四所提供的一种数据库语法测试装置的结构示意图。该数据库语法测试装置可以采用软件和/或硬件的方式实现,例如该数据库语法测试装置可以配置于计算机设备中。如图4所示,该装置包括配置参数获取模块410、目标案例确定模块420、待测试语句生成模块430和测试执行模块440,其中:
配置参数获取模块410,用于响应于检测到的测试指令,获取所述测试指令关联的配置参数;
目标案例确定模块420,用于确定所述测试指令关联的目标测试案例;
待测试语句生成模块430,用于基于所述目标测试案例和所述配置参数确定待测试语句;
测试执行模块440,用于对所述待测试语句进行测试,得到测试结果并输出。
本发明实施例通过配置参数获取模块410响应于检测到的测试指令,获取所述测试指令关联的配置参数;目标案例确定模块420确定所述测试指令关联的目标测试案例;待测试语句生成模块430基于所述目标测试案例和所述配置参数确定待测试语句;测试执行模块440对所述待测试语句进行测试,得到测试结果并输出。通过对测试流程得抽象,基于该测试框架,使得简单高效的实现对多个数据库的语法兼容性测试;提供了灵活的、多维度的参数配置,能够支持数据库语法测试各个场景的配置要求,从而满足不同测试场景的需求,简化案例设计,降低测试人员门槛。
可选的,在上述方案的基础上,目标案例确定模块420具体用于:
获取所述测试指令中包含的测试类型;
根据预先设置的类型标识对应关系确定目标测试案例标识,基于所述目标测试案例标识确定所述测试指令关联的目标测试案例。
可选的,在上述方案的基础上,测试执行模块440具体用于:
读取所述待测试语句的关联测试文件,执行测试操作。
可选的,在上述方案的基础上,装置还包括测试案例设置模块,用于:
设置基础测试案例,基于所述基础测试案例的语法结构确定所述基础测试案例的共享架构。
可选的,在上述方案的基础上,装置还包括测试案例存储模块,用于:
确定所述基础测试案例的测试类型,将所述测试类型与所述基础测试案例的测试案例标识对应存储。
可选的,在上述方案的基础上,测试执行模块440具体用于:
将所述测试结果转换为设定格式后输出。
本发明实施例所提供的数据库语法测试装置可执行本发明任意实施例所提供的数据库语法测试方法,具备执行方法相应的功能模块和有益效果。
实施例五
图5是本发明实施例五所提供的一种计算机设备的结构示意图。图5示出了适于用来实现本发明实施方式的示例性计算机设备512的框图。图5显示的计算机设备512仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,计算机设备512以通用计算设备的形式表现。计算机设备512的组件可以包括但不限于:一个或者多个处理器516,系统存储器528,连接不同系统组件(包括系统存储器528和处理器516)的总线518。
总线518表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器516或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(ISA)总线,微通道体系结构(MAC)总线,增强型ISA总线、视频电子标准协会(VESA)局域总线以及外围组件互连(PCI)总线。
计算机设备512典型地包括多种计算机系统可读介质。这些介质可以是任何能够被计算机设备512访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
系统存储器528可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(RAM)530和/或高速缓存存储器532。计算机设备512可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。仅作为举例,存储装置534可以用于读写不可移动的、非易失性磁介质(图5未显示,通常称为“硬盘驱动器”)。尽管图5中未示出,可以提供用于对可移动非易失性磁盘(例如“软盘”)读写的磁盘驱动器,以及对可移动非易失性光盘(例如CD-ROM,DVD-ROM或者其它光介质)读写的光盘驱动器。在这些情况下,每个驱动器可以通过一个或者多个数据介质接口与总线518相连。系统存储器528可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本发明各实施例的功能。
具有一组(至少一个)程序模块542的程序/实用工具540,可以存储在例如系统存储器528中,这样的程序模块542包括但不限于操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块542通常执行本发明所描述的实施例中的功能和/或方法。
计算机设备512也可以与一个或多个外部设备514(例如键盘、指向设备、显示器524等)通信,还可与一个或者多个使得用户能与该计算机设备512交互的设备通信,和/或与使得该计算机设备512能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口522进行。并且,计算机设备512还可以通过网络适配器520与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器520通过总线518与计算机设备512的其它模块通信。应当明白,尽管图中未示出,可以结合计算机设备512使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
处理器516通过运行存储在系统存储器528中的程序,从而执行各种功能应用以及数据处理,例如实现本发明实施例所提供的数据库语法测试方法,该方法包括:
响应于检测到的测试指令,获取所述测试指令关联的配置参数;
确定所述测试指令关联的目标测试案例;
基于所述目标测试案例和所述配置参数确定待测试语句;
对所述待测试语句进行测试,得到测试结果并输出。
当然,本领域技术人员可以理解,处理器还可以实现本发明任意实施例所提供的数据库语法测试方法的技术方案。
实施例六
本发明实施例六还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本发明实施例所提供的数据库语法测试方法,该方法包括:
响应于检测到的测试指令,获取所述测试指令关联的配置参数;
确定所述测试指令关联的目标测试案例;
基于所述目标测试案例和所述配置参数确定待测试语句;
对所述待测试语句进行测试,得到测试结果并输出。
当然,本发明实施例所提供的一种计算机可读存储介质,其上存储的计算机程序不限于如上的方法操作,还可以执行本发明任意实施例所提供的数据库语法测试方法的相关操作。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (11)
1.一种数据库语法测试系统,其特征在于,包括:配置模块和测试执行模块,其中:
所述配置模块,用于获取待测试语句的配置参数,并将各所述配置参数存储至数据库中,将所述配置参数作为目标测试案例的程序代码的执行参数,得到待测试语句;
所述测试执行模块,用于存储各测试案例的共享架构,将所述各测试案例的共享信息存储在共享模块中,供各所述待测试语句使用,所述配置参数包括所述测试案例执行所需的程序代码;
其中,所述配置参数包括目标测试案例的自定义测试模块、案例标识、前置条件结构化查询语言的标识、测试结构化查询语言的标识和后置清理结构化查询语言的标识;
其中,设置基础测试案例,基于所述基础测试案例的语法结构确定所述基础测试案例的共享架构;
其中,所述测试执行模块包括统一执行子模块和语句接口模块,其中:
统一执行子模块,用于获取所述配置参数关联的目标测试案例,基于所述配置参数和所述目标测试案例生成待测试语句;
所述语句接口模块,用于读取所述待测试语句的关联测试文件,并执行测试操作,得到测试结果。
2.根据权利要求1所述的系统,其特征在于,所述测试执行模块还包括格式化输出模块,用于:
将所述测试结果转换为设定格式后输出。
3.根据权利要求1所述的系统,其特征在于,所述获取所述配置参数关联的目标测试案例,包括:
根据测试指令确定目标测试案例标识,基于所述目标测试案例标识确定所述配置参数关联的目标测试案例。
4.根据权利要求3所述的系统,其特征在于,所述根据测试指令确定目标测试案例标识,包括:
获取所述测试指令中包含的测试类型,根据预先设置的类型标识对应关系确定所述目标测试案例标识。
5.一种数据库语法测试方法,其特征在于,应用于权利要求1-4任一项所述的数据库语法测试系统,所述方法包括:
响应于检测到的测试指令,获取所述测试指令关联的配置参数;
确定所述测试指令关联的目标测试案例,将所述配置参数作为目标测试案例的程序代码的执行参数;
基于所述目标测试案例和所述配置参数确定待测试语句,读取所述待测试语句的关联测试文件;
对所述待测试语句进行测试,得到测试结果并输出;
其中,所述配置参数包括目标测试案例的自定义测试模块、案例标识、前置条件结构化查询语言的标识、测试结构化查询语言的标识和后置清理结构化查询语言的标识;
设置基础测试案例,基于所述基础测试案例的语法结构确定所述基础测试案例的共享架构。
6.根据权利要求5所述的方法,其特征在于,所述确定所述测试指令关联的目标测试案例,包括:
获取所述测试指令中包含的测试类型;
根据预先设置的类型标识对应关系确定目标测试案例标识,基于所述目标测试案例标识确定所述测试指令关联的目标测试案例。
7.根据权利要求5所述的方法,其特征在于,还包括:
确定所述基础测试案例的测试类型,将所述测试类型与所述基础测试案例的测试案例标识对应存储。
8.根据权利要求5所述的方法,其特征在于,所述得到测试结果并输出,包括:
将所述测试结果转换为设定格式后输出。
9.一种数据库语法测试装置,其特征在于,包括:
配置参数获取模块,用于响应于检测到的测试指令,获取所述测试指令关联的配置参数;
目标案例确定模块,用于确定所述测试指令关联的目标测试案例,将所述配置参数作为目标测试案例的程序代码的执行参数;
待测试语句生成模块,用于基于所述目标测试案例和所述配置参数确定待测试语句,读取所述待测试语句的关联测试文件;
测试执行模块,用于对所述待测试语句进行测试,得到测试结果并输出;
其中,所述配置参数包括目标测试案例的自定义测试模块、案例标识、前置条件结构化查询语言的标识、测试结构化查询语言的标识和后置清理结构化查询语言的标识;
设置基础测试案例,基于所述基础测试案例的语法结构确定所述基础测试案例的共享架构。
10.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求5-8中任一所述的数据库语法测试方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求5-8中任一所述的数据库语法测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110347814.2A CN112948266B (zh) | 2021-03-31 | 2021-03-31 | 一种数据库语法测试系统、方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110347814.2A CN112948266B (zh) | 2021-03-31 | 2021-03-31 | 一种数据库语法测试系统、方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112948266A CN112948266A (zh) | 2021-06-11 |
CN112948266B true CN112948266B (zh) | 2023-06-20 |
Family
ID=76231350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110347814.2A Active CN112948266B (zh) | 2021-03-31 | 2021-03-31 | 一种数据库语法测试系统、方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112948266B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679658A (zh) * | 2015-03-17 | 2015-06-03 | 百度在线网络技术(北京)有限公司 | Web页面的测试方法和系统 |
CN105224458A (zh) * | 2015-10-09 | 2016-01-06 | 上海瀚银信息技术有限公司 | 一种数据库测试方法及系统 |
CN107741901A (zh) * | 2016-09-28 | 2018-02-27 | 腾讯科技(深圳)有限公司 | 一种关联数据库语句的测试方法和装置 |
CN109271326A (zh) * | 2018-11-28 | 2019-01-25 | 优刻得科技股份有限公司 | 云数据库的测试方法及其装置、设备和存储介质 |
CN110888818A (zh) * | 2019-12-22 | 2020-03-17 | 普信恒业科技发展(北京)有限公司 | 测试用例配置系统与方法,自动化测试系统与方法 |
CN111427784A (zh) * | 2020-03-24 | 2020-07-17 | 中国建设银行股份有限公司 | 一种数据获取方法、装置、设备及存储介质 |
CN112433899A (zh) * | 2020-11-27 | 2021-03-02 | 中国建设银行股份有限公司 | 一种云服务器批量检测方法、装置、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9489418B2 (en) * | 2007-04-27 | 2016-11-08 | International Business Machines Corporation | Processing database queries embedded in application source code from within integrated development environment tool |
-
2021
- 2021-03-31 CN CN202110347814.2A patent/CN112948266B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104679658A (zh) * | 2015-03-17 | 2015-06-03 | 百度在线网络技术(北京)有限公司 | Web页面的测试方法和系统 |
CN105224458A (zh) * | 2015-10-09 | 2016-01-06 | 上海瀚银信息技术有限公司 | 一种数据库测试方法及系统 |
CN107741901A (zh) * | 2016-09-28 | 2018-02-27 | 腾讯科技(深圳)有限公司 | 一种关联数据库语句的测试方法和装置 |
CN109271326A (zh) * | 2018-11-28 | 2019-01-25 | 优刻得科技股份有限公司 | 云数据库的测试方法及其装置、设备和存储介质 |
CN110888818A (zh) * | 2019-12-22 | 2020-03-17 | 普信恒业科技发展(北京)有限公司 | 测试用例配置系统与方法,自动化测试系统与方法 |
CN111427784A (zh) * | 2020-03-24 | 2020-07-17 | 中国建设银行股份有限公司 | 一种数据获取方法、装置、设备及存储介质 |
CN112433899A (zh) * | 2020-11-27 | 2021-03-02 | 中国建设银行股份有限公司 | 一种云服务器批量检测方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112948266A (zh) | 2021-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10642721B2 (en) | Generation of automated testing scripts by converting manual test cases | |
CN107273280B (zh) | 一种日志处理方法、装置、电子设备和存储介质 | |
CN110347598B (zh) | 一种测试脚本生成方法、装置、服务器及存储介质 | |
US20060156137A1 (en) | Test program set generation tool | |
CN111813804B (zh) | 一种数据查询方法、装置、电子设备及存储介质 | |
CN108241720B (zh) | 数据处理方法、装置和计算机可读存储介质 | |
US20190147104A1 (en) | Method and apparatus for constructing artificial intelligence application | |
CN113384896A (zh) | 基于Unity的资源打包方法、装置、设备及介质 | |
CN113836014A (zh) | 一种接口测试方法、装置、电子设备和存储介质 | |
CN112597171A (zh) | 表格关系可视化方法、装置、电子设备及存储介质 | |
CN112948266B (zh) | 一种数据库语法测试系统、方法、装置、设备及存储介质 | |
CN113792138B (zh) | 报表生成方法、装置、电子设备及存储介质 | |
CN113238940B (zh) | 一种接口测试结果的比对方法、装置、设备和存储介质 | |
CN115543147A (zh) | 图标检测脚本的生成方法、设备及存储介质 | |
CN112131611B (zh) | 数据正确性验证方法、装置、设备、系统及存储介质 | |
US7689905B1 (en) | Containment of terminal application run-time data for viewing when disconnected from a host server | |
CN114911479A (zh) | 基于配置化的界面生成方法、装置、设备及存储介质 | |
CN114385155A (zh) | vue项目可视化工具生成方法、装置、设备及存储介质 | |
CN109062797B (zh) | 生成信息的方法和装置 | |
CN110471708B (zh) | 基于可重用组件的配置项获取的方法及装置 | |
CN111400190A (zh) | 自动化测试流程生成方法、装置及计算机可读存储介质 | |
CN112561331A (zh) | 一种可视化的试验分析评估指标构建方法 | |
CN110795338A (zh) | 一种基于前后端交互的自动化测试方法、装置及电子设备 | |
CN112988593B (zh) | 代码分析方法、装置、计算机设备及存储介质 | |
CN110348127B (zh) | 一种测试用例的生成方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |