CN111694738A - 一种sql测试脚本的生成方法 - Google Patents
一种sql测试脚本的生成方法 Download PDFInfo
- Publication number
- CN111694738A CN111694738A CN202010499207.3A CN202010499207A CN111694738A CN 111694738 A CN111694738 A CN 111694738A CN 202010499207 A CN202010499207 A CN 202010499207A CN 111694738 A CN111694738 A CN 111694738A
- Authority
- CN
- China
- Prior art keywords
- statement
- sql
- language
- use case
- case
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- 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
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明提供了一种SQL测试脚本的生成方法,包括以下步骤:S1、构建测试脚本用例编写语言,便于编写者编写用例;S2、利用编辑器解析编写用例,并将编写用例翻译成所需的目标语言用例代码;S3、如果S2生成的目标语言是编译型语言,编译S2生成的目标语言的用例代码得到测试程序,执行测试程序进行测试,如果S2生成的目标言语是解释型语言,则可直接执行S2生成的用例代码。本发明所述的SQL测试脚本的生成方法,可以让用例编写者用几行语句表达通用编程语言几十甚至上百行代码表达的内容,同时一次编写多种目标语言执行,极大的提升了效率。
Description
技术领域
本发明属于数据库领域,尤其是涉及一种SQL测试脚本的生成方法。
背景技术
SQL测试是数据库系统的核心测试之一,传统的SQL测试的方法有很多,但基本都是选择一种通用编程语言,用标准的数据库连接接口如JDBC和ODBC访问数据库。通常用这种方法,一个测试用例根据用例的复杂层度,可能要写几十到几百行的代码,代码之间难以避免交叉调用,大多数代码与测试意图无关,用例越来越多,测试代码会变得越来越复杂,越来越难维护,难交接,难以新增用例,几乎不能快速地将用例迁移到另一种语言。同时随着技术的发展,形成了多种编程语言百花齐放的局面,多种语言都需要使用数据库,对数据库厂商来说,需要对多种语言提供连接支持,需要通过测试来验证通过每种语言的连接器执行SQL都能正常工作,这样需要为每一种语言都提供一套测试代码,用例开发的成本、维护成本及效率都不高。
发明内容
针对现有技术中的缺陷,本发明提供了一种SQL测试脚本的生成方法,本发明通过对测试用例进行抽象设计出与通用编程语言无关的专用于描述SQL测试的语言,让SQL测试用例的编写与具体的实现语言分离,让用例编写者不再关心具体实现语言的实现逻辑,可以更专注的写用例。
为达到上述目的,本发明的技术方案是这样实现的:
一种SQL测试脚本的生成方法,包括以下步骤:
S1、构建测试脚本用例编写语言,便于编写者编写用例;
S2、利用编辑器解析编写用例,并将编写用例翻译成所需的目标语言用例代码;
S3、如果S2生成的目标语言是编译型语言,编译S2生成的目标语言的用例代码得到测试程序,执行测试程序进行测试,如果S2生成的目标言语是解释型语言,则可直接执行S2生成的用例代码。
进一步的,所述步骤S1中,构建用例编写语言包括用例编写语言的语法构建;
语法构建信息包括用于SQL测试描述的配置描述部分和用例描述部分;配置描述部分设置在用例描述部分的前端,用于定义用例编译时及运行时的配置;所述用例描述部分用于定义具体测试用例。
进一步的,所述配置描述部分包括语法关键词和配置字符串;
所述配置字符串设置在括号内,所述语法关键词设置在括号的前端。
进一步的,所述用例描述部分包括由1个以上用例描述依次组成的用例描述组;
单个用例描述包括由前向后依次设置的语法关键词、测试用例名称、执行语句组,所述执行语句组设置在大括号内。
进一步的,所述执行语句组由1条以上的执行语句构成;
单个执行语句由多种类型的语句组成,语句的类型及其构成如下:
终端申明语句:Term终端名列表
赋值语句:变量名=赋值表达式
无结果集语句::SQL语句
有结果集语句::ResultSet(SQL语句)
无结果集指定终端执行语句::终端名SQL语句
有结果集指定终端执行语句::终端名ResultSet(SQL语句)
异步执行语句::Async无结果集语句
Async有结果集语句
Async无结果集指定终端执行语句
Async有结果集指定终端执行语句
断语言句期望相等:ExpectEqual(表达式,表达式)
断语言句期望不相等:ExpectNotEqual(表达式,表达式)
断言期望包含子串:ExpectSubstr(表达式,表达式)
断言期望不包含子串:ExpectNoSubstr(表达式,表达式)
断言期望元素在:ExpectIn(表达式,表达式)
断言期望元素不在:ExpectNoIn(表达式,表达式)
Shell语句:Shell(shell命令)
其中Term、ResultSet、Async、ExpectEqual、ExpectNotEqual、ExpectSubstr、ExpectNoSubstr、ExpectIn、ExpectNotIn和Shell均为语法关键字。
进一步的,所述表达式采用但不限于字符串或者数字。
进一步的,所述步骤S2中,编译器的执行方法如下:
S201、解析用例编写语言编写的用例文件;
S202、进行词法检查和语法检查后,生成执行树;
S203、根据生成的执行树及设定,将执行树翻译成目标语言用例代码。
进一步的,所述目标语言用例代码包括但不限于python代码、java代码或C/C++代码。
一种SQL测试用终端,其SQL测试方法采用权利要求1-8任一所述的SQL测试脚本的生成方法生成得到。
一种SQL测试用系统,其SQL测试方法采用权利要求1-8任一所述的SQL测试脚本的生成方法生成得到。
相对于现有技术,本发明所述的SQL测试脚本的生成方法具有以下优势:
(1)本发明所述的SQL测试脚本的生成方法可以让用例编写者用几行语句表达通用编程语言几十甚至上百行代码表达的内容,同时一次编写多种目标语言执行,极大的提升了效率。
(2)本发明所述的SQL测试脚本的生成方法以将SQL测试用例编写语言编译成python,java和C/C++等目标语言。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本实施例中SQL测试用例编写语言及其编译系统工作流程图;
图2为本实施例中编译器的结构图;
图3为本实施例中虚拟终端执行流程图;
图4为本实施例中用例调度器执行流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
现有技术中,EsgynDB是企业级的SQL-on-Hadoop解决方案,能够在Hadoop环境中处理运行时间较短的联机事务处理(online transaction processing,OLTP)和运行时间较长的运营型数据存储(operational data store,ODS)工作负载。如果EsgynDB要具备具有竞争性的品质,高品质的SQL测试必不可少。有效的方法和工具可以让测试人员产出更多的测试用例,做更全面的测试,应对不断发展的各种功能,发现更多潜在的BUG,从而确保EsgynDB软件的高品质。
实施例一:
实施例一提供了一种测试脚本用例编写语言,能够用简洁的语句表达测试用例,本方法包括以下内容:
SQL测试描述:配置描述用例描述组
配置描述部分和用例描述部分,配置描述在前用于定义用例编译时及运行时的配置,用例描述组在后用于定义具体测试用例。
所述的配置具体为:
Config(配置字符串)
Config是语法关键字,配置字符串放在左括号和右括号之间。
所述的用例描述组为:
用例描述组为1个或多个用例描述依次组成,单个用例的方法如下:
TestCase用例名称{执行语句组}
TestCase是语法关键字,其后是测试用例的名称,执行语句组被左右大括号包裹。这里需要说明的是组合符合不局限于大括号和小括号,大括号和小括号只是本实施例的其中一种实施方式,也可以采用其他的组合符号。
用户只需要描述用例要做什么而不用考虑怎么做,如果使用通用编程语言实现用户不仅要考虑做什么,同时要考虑怎么做。
用例描述由以下语句组成,通过以下语句的组合可以表达出非常丰富的测试用例。
终端申明语句:Term终端名列表
赋值语句:变量名=赋值表达式
无结果集语句::SQL语句;
有结果集语句::ResultSet(SQL语句);
无结果集指定终端执行语句::终端名SQL语句
有结果集指定终端执行语句::终端名ResultSet(SQL语句)
异步执行语句::Async无结果集语句
Async有结果集语句
Async无结果集指定终端执行语句
Async有结果集指定终端执行语句
断语言句期望相等:ExpectEqual(表达式,表达式)
断语言句期望不相等:ExpectNotEqual(表达式,表达式)
断言期望包含子串:ExpectSubstr(表达式,表达式)
断言期望不包含子串:ExpectNoSubstr(表达式,表达式)
断言期望元素在:ExpectIn(表达式,表达式)
断言期望元素不在:ExpectNoIn(表达式,表达式)
Shell语句:Shell(shell命令)
其中Term、ResultSet、Async、ExpectEqual、ExpectNotEqual、ExpectSubstr、ExpectNoSubstr、ExpectIn、ExpectNotIn和Shell为语法关键字,注意以上语法描述中全角冒号后的半角冒号属于语法的一部分。
本实施例中,用例编写者可以使用以上的语句表达出丰富的测试意图,例如,我们可以很快写出测试事务隔离级别的测试case:
TestCase TEST_LOCK
{
Terminal T1T2;
T1:"create table emp_temp as select*from employee";
T1:"begin work";
T1:"select*from emp_temp where employeeno>=7566and employeeno<=7788";
T2:"begin work";
statusValue=T2:"select*from emp_temp for update";
ExpectEqual(statusValue.code,30052);
ExpectSubstr(statusValue.message,"ROW LEVEL LOCK TIMEOUT ERROR");
T1:"commit";
T2:"commit";
}
示例定义了名为测试用例,在测试名之后的左右大小括号之间是测试用例的内容。‘Terminal T1T2’这条语句申明了两个虚拟终端,名字分别为T1和T2。‘T1:"createtable emp_temp as select*from employee";’指定在终端T1执行SQL语句:"createtable emp_temp as select*from employee"。类似的后续的T1:…和T2:…表示在相应的终端执行。‘statusValue=T2:"select*from emp_temp for update";’指定在终端T2执行"select*from emp_temp for update"同时将执行结果的错误码和错误消息保存在statusValue中。’ExpectEqual(statusValue.code,30052);’指定期望的返回码是30052。’ExpectSubstr(statusValue.message,"ROW LEVEL LOCK TIMEOUT ERROR");’指定期望的返回消息包含字符串"ROW LEVEL LOCK TIMEOUT ERROR"。
用本发明的SQL用例编写语言编写的如上用例转成通用编程语言如C/C++或者Java来描述,可能需要一两百行代码。这里的用例描述只描述了要做什么,而不需要知道怎么做。通用编程语言就需要写各种流程控制分支去实现做什么和解决怎么做的问题。
实施例二:
实施例二提供了一种SQL测试用例编写语言编译器实现方法,可以生成结构清晰的目标语言用例代码,如图1所示,具体步骤为:
S1,通过词法、语法和语义分析得到中间数据结构(即执行树)。
S2,根据编译配置将中间数据结构翻译成目标语言实现。
具体为:
S21,如图2所示,编译器为不同目标语言提供了基础的执行环境实现,包括虚拟终端实现和测试用例基础实现。
S211,如图3所示,虚拟终端被启动后进入事件循环,接收等待接收用户命令,执行命令并返回相应的执行结果。
S212,测试用例的基础实现包括,用例管理,基础用例框架,用例执行报告,断语言句的实现等,如图4所示为用例调度器的执行流程。
本发明与现有技术相比具有多方面优势,具体如下:
第一方面,本发明提供了一种SQL测试用例编写语言,专用于编写SQL测试用例,比通用编程语言更能简洁直观的表达测试用例。可以用几行语句表达通用编程语言几十甚至上百行的语句。具体包括:
提供Config语法用于指定配置信息,Config的语法定义如下:
Config(配置字符串)
配置字符串是用户指定信息。
提供TestCase关键字,用于指定测试用例的边界,TestCase的语法定义如下:
TestCase用例名{用例描述}
用户只需要描述用例要做什么而不用考虑怎么做,如果使用通用编程语言实现用户不仅要考虑做什么,同时要考虑怎么做。
用例描述由以下语句组成,通过以下语句的组合可以表达出非常丰富的测试用例。
终端申明语句:Term终端名列表
赋值语句:变量名=赋值表达式
无结果集语句::SQL语句
有结果集语句::ResultSet(SQL语句)
无结果集指定终端执行语句::终端名SQL语句
有结果集指定终端执行语句::终端名ResultSet(SQL语句)
异步执行语句::Async无结果集语句
Async有结果集语句
Async无结果集指定终端执行语句
Async有结果集指定终端执行语句
断语言句期望相等:ExpectEqual(表达式,表达式)
断语言句期望不相等:ExpectNotEqual(表达式,表达式)
断言期望包含子串:ExpectSubstr(表达式,表达式)
断言期望不包含子串:ExpectNoSubstr(表达式,表达式)
断言期望元素在:ExpectIn(表达式,表达式)
断言期望元素不在:ExpectNoIn(表达式,表达式)
Shell语句:Shell(shell命令)
其中Term、ResultSet、Async、ExpectEqual、ExpectNotEqual、ExpectSubstr、ExpectNoSubstr、ExpectIn、ExpectNotIn和Shell为SQL测试用例编写语言提供的语法关键字。
第二方面,本发明提供了一种SQL测试用例编写语言的编译器实现方法,可以将SQL测试用例编写语言编译成python,java和C/C++等目标语言。具体包括:
编译器完成词法分析、语法和语义分析之后生成了一个中间数据结构,这个中间数据结构可以被翻译成python,java和C/C++等的代码实现。在逻辑上,生成的目标代码包括模拟终端的实现及使用该终端的由用户编写的由用例描述生成的用例实现列表。
终端模拟器提供统一的接口,主要包括:
run:进入终端事件循环。
close:关闭模拟终端。
get_result:获取执行结果集。
execute:执行终端命令及SQL。
第三方面,本发明提供了基于一种SQL测试用例编写语言的编译系统的测试用例管理方法。具体如下:
传统使用通用语言编写测试用例,随着测试用例增加,用例之间的耦合度就会增加,或者用例代码的冗余程度会很高,导致用例代码的改动及维护困难。在出现问题及分析bug会很麻烦。基于一种SQL测试用例编写语言的编译系统的测试用例管理方法用例之间完全分离,同时也不用担心大量冗余代码带来的可维护性问题,因为最终的目标语言测试代码是通过编译器生成。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和系统,可以通过其它的方式实现。例如,以上所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。上述单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种SQL测试脚本的生成方法,其特征在于,包括以下步骤:
S1、构建测试脚本用例编写语言,便于编写者编写用例;
S2、利用编辑器解析编写用例,并将编写用例翻译成所需的目标语言用例代码;
S3、如果S2生成的目标语言是编译型语言,编译S2生成的目标语言的用例代码得到测试程序,执行测试程序进行测试,如果S2生成的目标言语是解释型语言,则可直接执行S2生成的用例代码。
2.根据权利要求1所述的SQL测试脚本的生成方法,其特征在于:所述步骤S1中,构建用例编写语言包括用例编写语言的语法构建;
语法构建信息包括用于SQL测试描述的配置描述部分和用例描述部分;配置描述部分设置在用例描述部分的前端,用于定义用例编译时及运行时的配置;所述用例描述部分用于定义具体测试用例。
3.根据权利要求2所述的SQL测试脚本的生成方法,其特征在于:所述配置描述部分包括语法关键词和配置字符串;
所述配置字符串设置在组合符号内,所述语法关键词设置在组合符号的前端。
4.根据权利要求2所述的SQL测试脚本的生成方法,其特征在于:所述用例描述部分包括由1个以上用例描述依次组成的用例描述组;
单个用例描述包括由前向后依次设置的语法关键词、测试用例名称、执行语句组,所述执行语句组设置在组合符号内。
5.根据权利要求4所述的SQL测试脚本的生成方法,其特征在于:所述执行语句组由1条以上的执行语句构成;
单个执行语句由多种类型的语句组成,语句的类型及其构成如下:
终端申明语句:Term终端名列表
赋值语句:变量名=赋值表达式
无结果集语句::SQL语句
有结果集语句::ResultSet(SQL语句)
无结果集指定终端执行语句::终端名SQL语句
有结果集指定终端执行语句::终端名ResultSet(SQL语句)
异步执行语句::Async无结果集语句
Async有结果集语句
Async无结果集指定终端执行语句
Async有结果集指定终端执行语句
断语言句期望相等:ExpectEqual(表达式,表达式)
断语言句期望不相等:ExpectNotEqual(表达式,表达式)
断言期望包含子串:ExpectSubstr(表达式,表达式)
断言期望不包含子串:ExpectNoSubstr(表达式,表达式)
断言期望元素在:ExpectIn(表达式,表达式)
断言期望元素不在:ExpectNoIn(表达式,表达式)
Shell语句:Shell(shell命令)
其中Term、ResultSet、Async、ExpectEqual、ExpectNotEqual、ExpectSubstr、ExpectNoSubstr、ExpectIn、ExpectNotIn和Shell均为语法关键字。
6.根据权利要求5所述的SQL测试脚本的生成方法,其特征在于:所述表达式采用但不限于字符串或者数字。
7.根据权利要求1所述的SQL测试脚本的生成方法,其特征在于:所述步骤S2中,编译器的执行方法如下:
S201、解析用例编写语言编写的用例文件;
S202、进行词法检查和语法检查后,生成执行树;
S203、根据生成的执行树及设定,将执行树翻译成目标语言用例代码。
8.根据权利要求1-7任一所述的SQL测试脚本的生成方法,其特征在于:所述目标语言用例代码包括但不限于python代码、java代码或C/C++代码。
9.一种SQL测试用终端,其特征在于:其SQL测试方法采用权利要求1-8任一所述的SQL测试脚本的生成方法生成得到。
10.一种SQL测试用系统,其特征在于:其SQL测试方法采用权利要求1-8任一所述的SQL测试脚本的生成方法生成得到。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010499207.3A CN111694738B (zh) | 2020-06-04 | 2020-06-04 | 一种sql测试脚本的生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010499207.3A CN111694738B (zh) | 2020-06-04 | 2020-06-04 | 一种sql测试脚本的生成方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111694738A true CN111694738A (zh) | 2020-09-22 |
CN111694738B CN111694738B (zh) | 2023-07-18 |
Family
ID=72478960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010499207.3A Active CN111694738B (zh) | 2020-06-04 | 2020-06-04 | 一种sql测试脚本的生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111694738B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113064811A (zh) * | 2020-12-25 | 2021-07-02 | 浙江鲸腾网络科技有限公司 | 基于工作流的自动化测试方法、装置以及电子设备 |
CN114115900A (zh) * | 2021-11-25 | 2022-03-01 | 北京力控元通科技有限公司 | 一种脚本编译方法、装置及电子设备 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070038985A1 (en) * | 2005-08-10 | 2007-02-15 | Microsoft Corporation | Syntactic program language translation |
CN102681877A (zh) * | 2011-03-15 | 2012-09-19 | 刘明前 | 一种计算机程序设计语言系统和创建方法 |
CN102929680A (zh) * | 2012-10-19 | 2013-02-13 | 普华基础软件股份有限公司 | 一种将TTCN-3脚本转换为Java源代码的方法,装置和系统 |
CN103942140A (zh) * | 2013-12-19 | 2014-07-23 | 江苏锐天信息科技有限公司 | 一种测试程序自动转换方法 |
CN105868204A (zh) * | 2015-01-21 | 2016-08-17 | 中国移动(深圳)有限公司 | 一种转换Oracle脚本语言SQL的方法及装置 |
CN106528399A (zh) * | 2015-09-15 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种测试用例确定方法及装置 |
CN108572749A (zh) * | 2017-03-14 | 2018-09-25 | 中兴通讯股份有限公司 | 一种终端控制方法和系统、设置适配装置、及移动终端 |
CN108804305A (zh) * | 2017-05-05 | 2018-11-13 | 北京嘀嘀无限科技发展有限公司 | 一种自动化测试的方法及装置 |
CN110018876A (zh) * | 2019-04-16 | 2019-07-16 | 成都四方伟业软件股份有限公司 | 软件应用国际化的方法、装置和电子设备 |
CN110347598A (zh) * | 2019-07-10 | 2019-10-18 | 上海达梦数据库有限公司 | 一种测试脚本生成方法、装置、服务器及存储介质 |
CN110347603A (zh) * | 2019-07-12 | 2019-10-18 | 北京精密机电控制设备研究所 | 一种人工智能的自动化软件测试系统及方法 |
-
2020
- 2020-06-04 CN CN202010499207.3A patent/CN111694738B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070038985A1 (en) * | 2005-08-10 | 2007-02-15 | Microsoft Corporation | Syntactic program language translation |
CN101253476A (zh) * | 2005-08-10 | 2008-08-27 | 微软公司 | 句法程序语言翻译 |
CN102681877A (zh) * | 2011-03-15 | 2012-09-19 | 刘明前 | 一种计算机程序设计语言系统和创建方法 |
CN102929680A (zh) * | 2012-10-19 | 2013-02-13 | 普华基础软件股份有限公司 | 一种将TTCN-3脚本转换为Java源代码的方法,装置和系统 |
CN103942140A (zh) * | 2013-12-19 | 2014-07-23 | 江苏锐天信息科技有限公司 | 一种测试程序自动转换方法 |
CN105868204A (zh) * | 2015-01-21 | 2016-08-17 | 中国移动(深圳)有限公司 | 一种转换Oracle脚本语言SQL的方法及装置 |
CN106528399A (zh) * | 2015-09-15 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种测试用例确定方法及装置 |
CN108572749A (zh) * | 2017-03-14 | 2018-09-25 | 中兴通讯股份有限公司 | 一种终端控制方法和系统、设置适配装置、及移动终端 |
CN108804305A (zh) * | 2017-05-05 | 2018-11-13 | 北京嘀嘀无限科技发展有限公司 | 一种自动化测试的方法及装置 |
CN110018876A (zh) * | 2019-04-16 | 2019-07-16 | 成都四方伟业软件股份有限公司 | 软件应用国际化的方法、装置和电子设备 |
CN110347598A (zh) * | 2019-07-10 | 2019-10-18 | 上海达梦数据库有限公司 | 一种测试脚本生成方法、装置、服务器及存储介质 |
CN110347603A (zh) * | 2019-07-12 | 2019-10-18 | 北京精密机电控制设备研究所 | 一种人工智能的自动化软件测试系统及方法 |
Non-Patent Citations (3)
Title |
---|
李娜: "利用自主设计的内嵌式ASP实现交互式用户界面", 《计算机应用研究》, no. 11, pages 224 - 225 * |
虚伪的空想家: "MySQL如何执行SQL脚本文件", pages 1 - 3, Retrieved from the Internet <URL:《https://blog.csdn.net/qq_42534026/article/details/105867784》> * |
赵天宇: "基于LLVM的脚本语言后端工具设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 3, pages 138 - 3103 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113064811A (zh) * | 2020-12-25 | 2021-07-02 | 浙江鲸腾网络科技有限公司 | 基于工作流的自动化测试方法、装置以及电子设备 |
CN113064811B (zh) * | 2020-12-25 | 2024-06-07 | 浙江鲸腾网络科技有限公司 | 基于工作流的自动化测试方法、装置以及电子设备 |
CN114115900A (zh) * | 2021-11-25 | 2022-03-01 | 北京力控元通科技有限公司 | 一种脚本编译方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111694738B (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8392880B2 (en) | Rapid application development for database-aware applications | |
US8010949B2 (en) | Database breakpoint apparatus and method | |
CN110347598B (zh) | 一种测试脚本生成方法、装置、服务器及存储介质 | |
US20020144236A1 (en) | Automatic abstraction of software source | |
Gupta et al. | An object-oriented VLSI CAD framework | |
Rogers et al. | GALEN ten years on: Tasks and supporting tools | |
Ward et al. | Formal methods for legacy systems | |
CN111694738B (zh) | 一种sql测试脚本的生成方法 | |
Gupta et al. | Auditdraw: Generating audits the FAST way | |
CN113590094A (zh) | 基于Flink的一站式任务开发、部署、运维平台系统、方法、装置、存储器及存储介质 | |
CN110851514B (zh) | 基于flink的etl处理方法 | |
US10839124B1 (en) | Interactive compilation of software to a hardware language to satisfy formal verification constraints | |
Marceau et al. | The design and implementation of a dataflow language for scriptable debugging | |
CN109491904B (zh) | 一种SparkSQL应用程序的自动化测试方法和装置 | |
CN115469860B (zh) | 基于指令集的需求到软件领域模型的自动生成方法及系统 | |
Fouque et al. | Compositional software reuse with case-based reasoning | |
Cordeiro et al. | Intrinsics-hmc: An automatic trace generator for simulations of processing-in-memory instructions | |
Dyer et al. | Boa: An enabling language and infrastructure for ultra-large-scale msr studies | |
CN113885970A (zh) | 一种基于脚本生成报表数据的方法、系统及介质 | |
Wing | What is a formal method? | |
Ceri et al. | Software prototyping by relational techniques: experiences with program construction systems | |
CN117806980B (zh) | 一种基于大语言模型的测试用例自动生成装置 | |
Wagner et al. | A scriptable, standards-compliant reporting and logging extension for SystemC | |
Dasgupta et al. | The use of Hoare logic in the verification of horizontal microprograms | |
KR100656559B1 (ko) | Bibd 방법론을 이용하는 프로그램 자동 개발 장치 |
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 |