CN110427188B - 单测断言程序的配置方法、装置、设备及存储介质 - Google Patents

单测断言程序的配置方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN110427188B
CN110427188B CN201910720249.2A CN201910720249A CN110427188B CN 110427188 B CN110427188 B CN 110427188B CN 201910720249 A CN201910720249 A CN 201910720249A CN 110427188 B CN110427188 B CN 110427188B
Authority
CN
China
Prior art keywords
assertion
configuration
test
grammar
asserted
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
Application number
CN201910720249.2A
Other languages
English (en)
Other versions
CN110427188A (zh
Inventor
朱凯
江旻
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WeBank Co Ltd
Original Assignee
WeBank Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201910720249.2A priority Critical patent/CN110427188B/zh
Publication of CN110427188A publication Critical patent/CN110427188A/zh
Application granted granted Critical
Publication of CN110427188B publication Critical patent/CN110427188B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开了一种单测断言程序的配置方法、装置、设备及存储介质,该方法通过接收用户输入的当前单元测试模块以及配置文件;根据所述配置文件中的目标类名,确定目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据;获取所述配置文件中的待执行断言语句,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。本发明将断言语句与单元测试模块进行分离,通过注释语句注册的配置文件灵活配置断言程序,提高了断言代码的编写效率,避免断言语句的重复编写,简化断言代码内容,提升了断言测试代码的可读性以及可维护性。

Description

单测断言程序的配置方法、装置、设备及存储介质
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及单测断言程序的配置方法、装置、设备及计算机可读存储介质。
背景技术
随着计算机技术的发展,越来越多的技术(大数据、分布式、区块链Blockchain、人工智能等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。对于银行的业务系统,通过单元测试对预期结果进行断言,需要先编写数据访问层代码,以通过所述访问层代码获取数据库数据,然后编写断言代码。因此,测试代码中包含了多种业务场景的数据,从而导致断言代码臃肿,不易维护和阅读。
发明内容
本发明的主要目的在于提出一种单测断言程序的配置方法、装置、设备及计算机可读存储介质,旨在解决现有断言测试代码臃肿导致现有断言代码不易维护和阅读的技术问题。
为实现上述目的,本发明提供一种单测断言程序的配置方法,所述单测断言程序的配置方法包括如下步骤:
在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件;
根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据;
获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。
可选地,所述获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果的步骤之后,还包括:
获取所述待断言对象数据以及所述断言执行结果,并将所述待断言对象数据及对应的断言执行结果存储至所述当前单元测试模块的单测上下文文件;
基于所述单测上下文文件,确定各条待断言对象数据对应的预期值以及实际值,并统计所述断言执行结果中的总断言条数、失败条数以及成功率;
基于所述各条待断言对象数据对应的预期值与实际值、总断言条数、失败条数以及成功率,通过预设模板引擎生成所述待断言对象数据对应的目标断言报告。
可选地,所述在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件的步骤之后,还包括:
创建所述当前单元测试模块对应的上下文文件,作为用于存储所述配置文件以及断言执行结果的单测上下文文件;
获取所述配置文件中的相关配置信息,将所述相关配置信息解析为可识别配置信息;
将所述可识别配置信息存储至所述单测上下文文件,其中,所述可识别配置信息包括用于调用目标数据表达式的目标类名以及配置断言语句。
可选地,所述单测断言程序的配置方法还包括:
在检测到所述当前单元测试模块的执行完成指令时,删除所述单测上下文文件。
可选地,所述根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据的步骤之前,还包括:
在接收到用户触发的注册指令时,将所述注册指令中的持久层实现类添加至断言框架的框架上下文文件进行注册;
所述根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据的步骤具体包括:
根据所述配置文件中的目标类名,在所述框架上下文文件中查找与所述目标类名匹配的持久层实现类,作为所述目标数据表达式;
基于所述配置文件中的目标数据相关信息,并通过所述数据表达式执行器调用执行所述目标数据表达式,在所述数据库中确定符合所述目标数据相关信息的数据,生成目标数据对象列表,作为所述待断言对象数据。
可选地,所述获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果的步骤具体包括:
在生成所述目标数据对象列表后,获取所述配置文件中的配置断言语句,作为待执行断言语句,并获取所述待执行断言语句对应的语法类型,其中,所述语法类型包括COUNT语法、SUM语法和CASE语法中的一种或多种;
根据所述待执行断言语句对应的语法类型,确定待调用的语法执行器,其中,所述语法执行器包括COUNT语法执行器、SUM语法执行器和CASE语法执行器中的一种或多种;
通过所述待调用的语法执行器对所述目标数据对象列表执行所述待执行断言语句,以对所述待断言对象数据进行断言,并输出所述待断言独享数据对应的断言执行结果。
可选地,所述配置文件为JSON格式文件,所述配置文件的注册方式为注解方式,以通过所述注解方式将所述配置文件添加至所述当前测试单元。
此外,为实现上述目的,本发明还提供一种单测断言程序的配置装置,所述单测断言程序的配置装置包括:
单测断言配置模块,用于在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件;
断言数据获取模块,用于根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据;
目标数据断言模块,用于获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。
可选地,所述单测断言程序的配置装置还包括:
断言结果存储模块,用于获取所述待断言对象数据以及所述断言执行结果,并将所述待断言对象数据及对应的断言执行结果存储至所述当前单元测试模块的单测上下文文件;
断言数据统计模块,用于基于所述单测上下文文件,确定各条待断言对象数据对应的预期值以及实际值,并统计所述断言执行结果中的总断言条数、失败条数以及成功率;
断言报告生成模块,用于基于所述各条待断言对象数据对应的预期值与实际值、总断言条数、失败条数以及成功率,通过预设模板引擎生成所述待断言对象数据对应的目标断言报告。
可选地,所述单测断言程序的配置装置还包括:
上下文创建模块,用于创建所述当前单元测试模块对应的上下文文件,作为用于存储所述配置文件以及断言执行结果的单测上下文文件;
配置信息解析模块,用于获取所述配置文件中的相关配置信息,将所述相关配置信息解析为可识别配置信息;
信息存储模块,用于将所述可识别配置信息存储至所述单测上下文文件,其中,所述可识别配置信息包括用于调用目标数据表达式的目标类名以及配置断言语句。
可选地,所述单测断言程序的配置装置还包括:
方法注册模块,用于在接收到用户触发的注册指令时,将所述注册指令中的持久层实现类添加至断言框架的框架上下文文件进行注册;
所述断言数据获取模块具体包括:
表达式获取单元,用于根据所述配置文件中的目标类名,在所述框架上下文文件中查找与所述目标类名匹配的持久层实现类,作为所述目标数据表达式;
断言数据获取单元,用于基于所述配置文件中的目标数据相关信息,并通过所述数据表达式执行器调用执行所述目标数据表达式,在所述数据库中确定符合所述目标数据相关信息的数据,生成目标数据对象列表,作为所述待断言对象数据。
可选地,所述目标数据断言模块具体包括:
在生成所述目标数据对象列表后,获取所述配置文件中的配置断言语句,作为待执行断言语句,并获取所述待执行断言语句对应的语法类型,其中,所述语法类型包括COUNT语法、SUM语法和CASE语法中的一种或多种;
根据所述待执行断言语句对应的语法类型,确定待调用的语法执行器,其中,所述语法执行器包括COUNT语法执行器、SUM语法执行器和CASE语法执行器中的一种或多种;
通过所述待调用的语法执行器对所述目标数据对象列表执行所述待执行断言语句,以对所述待断言对象数据进行断言,并输出所述待断言独享数据对应的断言执行结果。
此外,为实现上述目的,本发明还提供一种单测断言程序的配置设备,所述单测断言程序的配置设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的单测断言程序的配置程序,所述单测断言程序的配置程序被所述处理器执行时实现如上所述的单测断言程序的配置方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有单测断言程序的配置程序,所述单测断言程序的配置程序被处理器执行时实现如上所述的单测断言程序的配置方法的步骤。
本发明提供一种单测断言程序的配置方法,即在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件;根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据;获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。通过上述方式,本发明将断言语句与单元测试模块进行分离,用户通过单元测试模块中的注释语句灵活配置用于配置断言程序的配置文件,将对应组合生成的断言程序注册至用户自定义的当前单元测试模块,然后根据配置文件中的待执行断言语句对待断言对象数据进行断言测试,避免断言语句的重复编写,简化断言代码内容,提高了断言代码的编写效率,提升了断言测试代码的可读性,便于维护所述断言测试代码,解决了现有断言测试代码臃肿导致现有断言代码不易维护和阅读的技术问题。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图;
图2为本发明单测断言程序的配置方法第一实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明实施例单测断言程序的配置设备可以是PC机或服务器设备,其上运行有Java虚拟机。
如图1所示,该单测断言程序的配置设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及单测断言程序的配置程序。
在图1所示的设备中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的单测断言程序的配置程序,并执行下述单测断言程序的配置方法中的操作。
基于上述硬件结构,提出本发明单测断言程序的配置方法实施例。
参照图2,图2为本发明单测断言程序的配置方法第一实施例的流程示意图,所述单测断言程序的配置方法包括:
步骤S10,在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件;
目前的银行业务系统一般通过单元测试对指定数据的预期结果进行断言时,需要先编写数据访问层代码,以通过所述访问层代码获取数据库中的指定数据,然后编写断言代码进行数据断言。因此,测试代码中包含了多种业务场景的数据,从而导致断言代码臃肿,不易维护和阅读。为了解决上述问题,本实施例中将断言语句与单元测试模块进行分离,用户通过自定义的用于配置断言程序的配置文件,将对应组合生成的断言程序注册至用户自定义的当前单元测试模块,然后根据配置文件中的待执行断言语句对待断言对象数据进行断言测试,避免断言语句的重复编写,简化断言代码内容,提升了断言测试代码的可读性,便于维护所述断言测试代码。具体地,所述单测断言程序的配置方法应用于所述单测断言程序的配置平台。所述单测断言程序的配置平台预先将历史单测断言代码进行模块化,并将常用的单元测试模块代码以及实现数据表达式的查询方法的常用持久层实现类模块抽象出来并封装存储在所述配置平台中,以便后续调用。其中,所述数据表达式用于从数据库中筛选出带断言数据。程序配置用户可根据实际需求,将所述配置平台中的单元测试模块对应的代码模板进行修改编辑,生成当前单元测试模块。并将待调用的实现数据表达式对应的查询方法的目标持久层实现类对应的目标类名以及待断言语句列表编辑至配置文件中。其中,所述配置文件为JSON格式文件,所述配置文件的注册方式为注解方式,以通过所述注解方式将所述配置文件添加至所述当前测试单元,即本实施例通过编写符合语法规范的断言语句来实现断言,通过JSON格式文件作为载体配置语句,并采用注解的方式将配置文件URL注入到单元测试方法中,从而使断言语句与单测代码抽离,便于维护。在配置完成之后,执行所述当前单元测试模块,然后在检测到注释语句时,调用所述注释语句对应注册的配置文件,并执行所述配置文件对应的相关代码。
步骤S20,根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据;
本实施例中,根据所述配置文件中的目标类名,在所述配置平台中的实现类模块中确定目标数据表达式。通过查找所述目标数据表达式中的DTO(Data Transfer Object,数据传输对象)类名,即查找该DTO注册的持久层实现类,并调用预设数据表达式执行器调用执行该持久层实现类对应的查询方法,在数据库中查询待断言对象数据,即满足预设条件的数据POJO对象列表。本实施例中通过自定义语法实现数据断言,该自定义语法包括数据表达式语法和数据断言语法两种,这两种语法分别用于支持数据获取和结果断言功能。两种语法规范定义如下:
1、数据表达式语法用于获取待断言数据,语法规范为:DTO:查询条件:
语法规范 用途
DTO:查询条件 获取待断言的DB数据
数据表达式语法借鉴了ORM(Object Relational Mapping,对象关系映射)方法和SQL语言。DTO为数据库DB中表名对应的POJO对象名;查询条件类比SQL语言中的WHERE字句,是由逻辑运算符连接的关系表达式组成。关系表达式是单个字段条件,语法为:字段运算符值。多个字段条件的运算逻辑支持与运算(and)。
查询条件关系表达式支持如下操作符:
操作符 描述
等于
in 在多个可选值中
2、断言语法用于对结果进行断言判断,语法实现了3种常见的断言场景。
1)COUNT语法实现对数据条数断言;
2)SUM语法实现对数字类型字段进行汇总断言;
3)CASE语法实现通过条件表达式过滤数据表达式所获取的数据,对满足条件的数据进行断言。
Figure BDA0002154458200000091
CASE语法为最常见的断言语法,该语法可以对POJO对象各属性的值进行断言判断。语法中WHEN后面的表达式为筛选条件,作用是将通过数据表达式获取的数据集,用筛选条件再次过滤出期望的子数据集。筛选条件是逻辑运算符连接的关系表达式组成,多个条件逻辑运算支持与运算(and)。单个关系表达式语法为:属性名运算符值。THEN后面的表达式为断言语句,作用是对数据集POJO对象的指定属性的值进行断言判断,语法与筛选条件表达式相同,只是关系表达式中的值含义变为预期的值。
CASE语法关系表达式支持如下操作符:
操作符 描述
等于
!= 不等于
contains 包含
in 在多个可选值中
步骤S30,获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。
本实施例中,获取配置用户基于所述配置文件自定义的配置断言语句,作为待执行断言语句。其中,所述待执行断言语句有多条时,生成待执行断言语句列表。在获取到数据POJO对象列表后,根据断言语句的语法类型选择调用对应的语法执行器,对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。其中,所述断言执行结果包括所述待断言对象数据对应的预期值以及实际值,还可以包括所述待断言对象数据对应的总断言条数、失败条数、成功率等。
本实施例提供一种单测断言程序的配置方法,即在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件;根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据;获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。通过上述方式,本发明将断言语句与单元测试模块进行分离,用户通过单元测试模块中的注释语句灵活配置用于配置断言程序的配置文件,将对应组合生成的断言程序注册至用户自定义的当前单元测试模块,然后根据配置文件中的待执行断言语句对待断言对象数据进行断言测试,避免断言语句的重复编写,简化断言代码内容,提高了断言代码的编写效率,提升了断言测试代码的可读性,便于维护所述断言测试代码,解决了现有断言测试代码臃肿导致现有断言代码不易维护和阅读的技术问题。
进一步地,基于本发明单测断言程序的配置方法第一实施例,提出本发明单测断言程序的配置方法第二实施例。
在本实施例中,所述单测断言程序的配置方法在步骤S30之后,还包括:
获取所述待断言对象数据以及所述断言执行结果,并将所述待断言对象数据及对应的断言执行结果存储至所述当前单元测试模块的单测上下文文件;
基于所述单测上下文文件,确定各条待断言对象数据对应的预期值以及实际值,并统计所述断言执行结果中的总断言条数、失败条数以及成功率;
基于所述各条待断言对象数据对应的预期值与实际值、总断言条数、失败条数以及成功率,通过预设模板引擎生成所述待断言对象数据对应的目标断言报告。
传统Assert断言在断言失败时会中断,这种方案的弊端是遇到失败后会中断当前断言程序,无法执行后续断言逻辑,因此无法确认后续断言是否正确,只能逐个解决排查断言失败的数据。为了解决上述问题,本实施例中预先增设单测上下文文件,并将所述待断言对象数据对应的断言执行结果存储至所述单测上下文文件中。然后增加了一个断言报告模块,该模块在单测类执行完后,从单测上下文文件中取出各条待断言对象数据对应的断言执行结果,通过模板引擎生成HTML格式的报告,逐条展示断言执行结果,包括预期值、实际值,同时还有对应的统计类信息如总断言条数、失败条数、成功率等。从而一次实现待断言对象数据的全部断言,减少断言验证点,提升断言测试效率。
进一步地,基于所述第二实施例,所述步骤S10之后,还包括:
创建所述当前单元测试模块对应的上下文文件,作为用于存储所述配置文件以及断言执行结果的单测上下文文件;
获取所述配置文件中的相关配置信息,将所述相关配置信息解析为可识别配置信息;
将所述可识别配置信息存储至所述单测上下文文件,其中,所述可识别配置信息包括用于调用目标数据表达式的目标类名以及配置断言语句。
本实施例中,在当前单元测试模块执行前创建单测上下文文件,用于存储所述配置文件以及断言执行结果。然后为了节省平台存储空间,在检测到所述当前单元测试模块的执行完成指令时,删除所述单测上下文文件。在接收到用户输入的配置文件时,获取所述配置文件中的相关配置信息,并将所述相关配置信息解析为可识别配置信息。即断言框架,也就是配置平台,将断言配置抽象为执行单元,其中,所述执行单元为断言框架可解释并执行的断言配置单元,包含数据表达式、断言语句两部分。断言数据表达式以JSON格式配置完成后,需要解析成执行单元,完整的执行单元包括数据表达式和断言语句列表两部分。其中,可将不同待断言对象数据对应的配置信息解析为不同的执行单元,即同一待断言对象数据对应的一执行单元。
进一步地,基于本发明单测断言程序的配置方法第二实施例,提出本发明单测断言程序的配置方法第三实施例。
在本实施例中,所述步骤S20之前,还包括:
在接收到用户触发的注册指令时,将所述注册指令中的持久层实现类添加至断言框架的框架上下文文件进行注册;
本实施例中,断言框架首先将所有持久层实现类注册到框架上下文文件中,或者将当前待调用的持久层实现类注册到框架上下文文件中,便于后续调用。
所述步骤S20具体包括:
根据所述配置文件中的目标类名,在所述框架上下文文件中查找与所述目标类名匹配的持久层实现类,作为所述目标数据表达式;
基于所述配置文件中的目标数据相关信息,并通过所述数据表达式执行器调用执行所述目标数据表达式,在所述数据库中确定符合所述目标数据相关信息的数据,生成目标数据对象列表,作为所述待断言对象数据。
本实施例中,在执行目标数据表达式时,通过数据表达式的DTO类名查找该DTO注册的持久层实现类,并执行实现类对应的查询方法,查询并返回满足条件的数据POJO对象列表,即在所述数据库中确定符合所述目标数据相关信息的数据,生成目标数据对象列表,作为所述待断言对象数据。其中,各DTO实现持久层泛型接口,实现类的泛型参数为具体DTO类,断言框架以DTO类名作为KEY,将所有实现此接口的bean注册到框架上下文文件中,使用时按DTO类名获取实现类。具体实施例中,断言框架借助ORM框架进行持久层访问,为兼容不同ORM框架,断言框架提供抽象类由配置用户决定具体使用哪种ORM框架并实现查询逻辑。具体实施例中,断言框架访问数据库需要为每个DTO实现持久层访问接口,该方案可以让断言框架支持不同ORM框架,但为DTO开发持久层访问接口提升了使用成本。后续优化方案可以增加ORM框架适配,配置用户只需在配置文件指定使用的ORM框架,由断言框架适配ORM框架间的差异。
进一步地,基于所述第三实施例,所述步骤S30具体包括:
在生成所述目标数据对象列表后,获取所述配置文件中的配置断言语句,作为待执行断言语句,并获取所述待执行断言语句对应的语法类型,其中,所述语法类型包括COUNT语法、SUM语法和CASE语法中的一种或多种;
根据所述待执行断言语句对应的语法类型,确定待调用的语法执行器,其中,所述语法执行器包括COUNT语法执行器、SUM语法执行器和CASE语法执行器中的一种或多种;
通过所述待调用的语法执行器对所述目标数据对象列表执行所述待执行断言语句,以对所述待断言对象数据进行断言,并输出所述待断言独享数据对应的断言执行结果。
本实施例中,在通过数据表达式确定待断言对象数据后,即生成所述目标数据对象列表后,进一步获取所述配置文件中的配置断言语句,作为待执行断言语句。然后根据各条待执行断言语句对应的语法类型确定语法执行器。其中,断言语法用于对结果进行断言判断,语法实现了3种常见的断言场景。
1)COUNT语法实现对数据条数断言;
2)SUM语法实现对数字类型字段进行汇总断言;
3)CASE语法实现通过条件表达式过滤数据表达式所获取的数据,对满足条件的数据进行断言。
CASE语法为最常见的断言语法,该语法可以对POJO对象各属性的值进行断言判断。语法中WHEN后面的表达式为筛选条件,作用是将通过数据表达式获取的数据集,用筛选条件再次过滤出期望的子数据集。筛选条件是逻辑运算符连接的关系表达式组成,多个条件逻辑运算支持与(and),单个关系表达式语法为:属性名运算符值。THEN后面的表达式为断言语句,作用是对数据集POJO对象的指定属性的值进行断言判断,语法与筛选条件表达式相同,只是关系表达式中的值含义变为预期的值。即通过所述待调用的语法执行器,即COUNT语法执行器、SUM语法执行器和CASE语法执行器中的一种或多种,对所述目标数据对象列表执行所述待执行断言语句,即COUNT语法、SUM语法和CASE语法中的一种或多种,以对所述待断言对象数据进行断言,并输出所述待断言独享数据对应的断言执行结果。
本发明还提供一种单测断言程序的配置装置,所述单测断言程序的配置装置包括:
单测断言配置模块,用于在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件;
断言数据获取模块,用于根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据;
目标数据断言模块,用于获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。
进一步地,所述单测断言程序的配置装置还包括:
断言结果存储模块,用于获取所述待断言对象数据以及所述断言执行结果,并将所述待断言对象数据及对应的断言执行结果存储至所述当前单元测试模块的单测上下文文件;
断言数据统计模块,用于基于所述单测上下文文件,确定各条待断言对象数据对应的预期值以及实际值,并统计所述断言执行结果中的总断言条数、失败条数以及成功率;
断言报告生成模块,用于基于所述各条待断言对象数据对应的预期值与实际值、总断言条数、失败条数以及成功率,通过预设模板引擎生成所述待断言对象数据对应的目标断言报告。
进一步地,所述单测断言程序的配置装置还包括:
上下文创建模块,用于创建所述当前单元测试模块对应的上下文文件,作为用于存储所述配置文件以及断言执行结果的单测上下文文件;
配置信息解析模块,用于获取所述配置文件中的相关配置信息,将所述相关配置信息解析为可识别配置信息;
信息存储模块,用于将所述可识别配置信息存储至所述单测上下文文件,其中,所述可识别配置信息包括用于调用目标数据表达式的目标类名以及配置断言语句。
进一步地,所述单测断言程序的配置装置还包括:
上下文删除模块,用于在检测到所述当前单元测试模块的执行完成指令时,删除所述单测上下文文件。
进一步地,所述单测断言程序的配置装置还包括:
方法注册模块,用于在接收到用户触发的注册指令时,将所述注册指令中的持久层实现类添加至断言框架的框架上下文文件进行注册;
所述断言数据获取模块具体包括:
表达式获取单元,用于根据所述配置文件中的目标类名,在所述框架上下文文件中查找与所述目标类名匹配的持久层实现类,作为所述目标数据表达式;
断言数据获取单元,用于基于所述配置文件中的目标数据相关信息,并通过所述数据表达式执行器调用执行所述目标数据表达式,在所述数据库中确定符合所述目标数据相关信息的数据,生成目标数据对象列表,作为所述待断言对象数据。
进一步地,所述目标数据断言模块具体包括:
在生成所述目标数据对象列表后,获取所述配置文件中的配置断言语句,作为待执行断言语句,并获取所述待执行断言语句对应的语法类型,其中,所述语法类型包括COUNT语法、SUM语法和CASE语法中的一种或多种;
根据所述待执行断言语句对应的语法类型,确定待调用的语法执行器,其中,所述语法执行器包括COUNT语法执行器、SUM语法执行器和CASE语法执行器中的一种或多种;
通过所述待调用的语法执行器对所述目标数据对象列表执行所述待执行断言语句,以对所述待断言对象数据进行断言,并输出所述待断言独享数据对应的断言执行结果。
上述各程序模块所执行的方法可参照本发明单测断言程序的配置方法各个实施例,此处不再赘述。
本发明还提供一种计算机可读存储介质。
本发明计算机可读存储介质上存储有单测断言程序的配置程序,所述单测断言程序的配置程序被处理器执行时实现如上所述的单测断言程序的配置方法的步骤。
其中,在所述处理器上运行的单测断言程序的配置程序被执行时所实现的方法可参照本发明单测断言程序的配置方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (14)

1.一种单测断言程序的配置方法,其特征在于,所述单测断言程序的配置方法包括如下步骤:
在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件;
根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据;
获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。
2.如权利要求1所述的单测断言程序的配置方法,其特征在于,所述获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果的步骤之后,还包括:
获取所述待断言对象数据以及所述断言执行结果,并将所述待断言对象数据及对应的断言执行结果存储至当前单元测试模块的单测上下文文件;
基于所述单测上下文文件,确定各条待断言对象数据对应的预期值以及实际值,并统计所述断言执行结果中的总断言条数、失败条数以及成功率;
基于所述各条待断言对象数据对应的预期值与实际值、总断言条数、失败条数以及成功率,通过预设模板引擎生成所述待断言对象数据对应的目标断言报告。
3.如权利要求2所述的单测断言程序的配置方法,其特征在于,所述在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件的步骤之后,还包括:
创建所述当前单元测试模块对应的上下文文件,作为用于存储所述配置文件以及断言执行结果的单测上下文文件;
获取所述配置文件中的相关配置信息,将所述相关配置信息解析为可识别配置信息;
将所述可识别配置信息存储至所述单测上下文文件,其中,所述可识别配置信息包括用于调用目标数据表达式的目标类名以及配置断言语句。
4.如权利要求3所述的单测断言程序的配置方法,其特征在于,所述单测断言程序的配置方法还包括:
在检测到所述当前单元测试模块的执行完成指令时,删除所述单测上下文文件。
5.如权利要求3所述的单测断言程序的配置方法,其特征在于,所述根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据的步骤之前,还包括:
在接收到用户触发的注册指令时,将所述注册指令中的持久层实现类添加至断言框架的框架上下文文件进行注册;
所述根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据的步骤具体包括:
根据所述配置文件中的目标类名,在所述框架上下文文件中查找与所述目标类名匹配的持久层实现类,作为所述目标数据表达式;
基于所述配置文件中的目标数据相关信息,并通过所述数据表达式执行器调用执行所述目标数据表达式,在所述数据库中确定符合所述目标数据相关信息的数据,生成目标数据对象列表,作为所述待断言对象数据。
6.如权利要求5所述的单测断言程序的配置方法,其特征在于,所述获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果的步骤具体包括:
在生成所述目标数据对象列表后,获取所述配置文件中的配置断言语句,作为待执行断言语句,并获取所述待执行断言语句对应的语法类型,其中,所述语法类型包括COUNT语法、SUM语法和CASE语法中的一种或多种;
根据所述待执行断言语句对应的语法类型,确定待调用的语法执行器,其中,所述语法执行器包括COUNT语法执行器、SUM语法执行器和CASE语法执行器中的一种或多种;
通过所述待调用的语法执行器对所述目标数据对象列表执行所述待执行断言语句,以对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。
7.如权利要求1-6中任一项所述的单测断言程序的配置方法,其特征在于,所述配置文件为JSON格式文件,所述配置文件的注册方式为注解方式,以通过所述注解方式将所述配置文件添加至当前测试单元。
8.一种单测断言程序的配置装置,其特征在于,所述单测断言程序的配置装置包括:
单测断言配置模块,用于在接收到断言配置指令时,接收用户输入的当前单元测试模块,执行所述当前单元测试模块,并在检测到注释语句时,调用所述注释语句对应注册的配置文件;
断言数据获取模块,用于根据所述配置文件中的目标类名,确定目标数据表达式,通过预设数据表达式执行器调用所述目标数据表达式,并通过所述目标数据表达式获取数据库中的待断言对象数据;
目标数据断言模块,用于获取所述配置文件中的配置断言语句,作为待执行断言语句,并根据所述待执行断言语句对应的语法类型,调用对应的语法执行器对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。
9.如权利要求8所述的单测断言程序的配置装置,其特征在于,所述单测断言程序的配置装置还包括:
断言结果存储模块,用于获取所述待断言对象数据以及所述断言执行结果,并将所述待断言对象数据及对应的断言执行结果存储至所述当前单元测试模块的单测上下文文件;
断言数据统计模块,用于基于所述单测上下文文件,确定各条待断言对象数据对应的预期值以及实际值,并统计所述断言执行结果中的总断言条数、失败条数以及成功率;
断言报告生成模块,用于基于所述各条待断言对象数据对应的预期值与实际值、总断言条数、失败条数以及成功率,通过预设模板引擎生成所述待断言对象数据对应的目标断言报告。
10.如权利要求9所述的单测断言程序的配置装置,其特征在于,所述单测断言程序的配置装置还包括:
上下文创建模块,用于创建所述当前单元测试模块对应的上下文文件,作为用于存储所述配置文件以及断言执行结果的单测上下文文件;
配置信息解析模块,用于获取所述配置文件中的相关配置信息,将所述相关配置信息解析为可识别配置信息;
信息存储模块,用于将所述可识别配置信息存储至所述单测上下文文件,其中,所述可识别配置信息包括用于调用目标数据表达式的目标类名以及配置断言语句。
11.如权利要求10所述的单测断言程序的配置装置,其特征在于,所述单测断言程序的配置装置还包括:
方法注册模块,用于在接收到用户触发的注册指令时,将所述注册指令中的持久层实现类添加至断言框架的框架上下文文件进行注册;
所述断言数据获取模块具体包括:
表达式获取单元,用于根据所述配置文件中的目标类名,在所述框架上下文文件中查找与所述目标类名匹配的持久层实现类,作为所述目标数据表达式;
断言数据获取单元,用于基于所述配置文件中的目标数据相关信息,并通过所述数据表达式执行器调用执行所述目标数据表达式,在所述数据库中确定符合所述目标数据相关信息的数据,生成目标数据对象列表,作为所述待断言对象数据。
12.如权利要求11所述的单测断言程序的配置装置,其特征在于,所述目标数据断言模块具体包括:
在生成所述目标数据对象列表后,获取所述配置文件中的配置断言语句,作为待执行断言语句,并获取所述待执行断言语句对应的语法类型,其中,所述语法类型包括COUNT语法、SUM语法和CASE语法中的一种或多种;
根据所述待执行断言语句对应的语法类型,确定待调用的语法执行器,其中,所述语法执行器包括COUNT语法执行器、SUM语法执行器和CASE语法执行器中的一种或多种;
通过所述待调用的语法执行器对所述目标数据对象列表执行所述待执行断言语句,以对所述待断言对象数据进行断言,并输出所述待断言对象数据对应的断言执行结果。
13.一种单测断言程序的配置设备,其特征在于,所述单测断言程序的配置设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的单测断言程序的配置程序,所述单测断言程序的配置程序被所述处理器执行时实现如权利要求1至7中任一项所述的单测断言程序的配置方法的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有单测断言程序的配置程序,所述单测断言程序的配置程序被处理器执行时实现如权利要求1至7中任一项所述的单测断言程序的配置方法的步骤。
CN201910720249.2A 2019-08-02 2019-08-02 单测断言程序的配置方法、装置、设备及存储介质 Active CN110427188B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910720249.2A CN110427188B (zh) 2019-08-02 2019-08-02 单测断言程序的配置方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910720249.2A CN110427188B (zh) 2019-08-02 2019-08-02 单测断言程序的配置方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN110427188A CN110427188A (zh) 2019-11-08
CN110427188B true CN110427188B (zh) 2023-06-09

Family

ID=68414328

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910720249.2A Active CN110427188B (zh) 2019-08-02 2019-08-02 单测断言程序的配置方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN110427188B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111008147B (zh) * 2019-12-20 2023-12-26 广州品唯软件有限公司 应用程序的测试方法、终端及计算机可读存储介质
CN111367555B (zh) * 2020-03-23 2023-08-08 抖音视界有限公司 断言的方法、装置、电子设备及计算机可读介质
CN111597189B (zh) * 2020-05-13 2023-09-01 北京三快在线科技有限公司 获取数据的方法、装置、设备及存储介质
CN112579461A (zh) * 2020-12-24 2021-03-30 成都新希望金融信息有限公司 断言处理方法、系统和存储介质
CN114519332B (zh) * 2022-02-18 2022-12-27 超睿科技(长沙)有限公司 一种基于断言的处理器验证方法、装置及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019350A (zh) * 2017-07-28 2019-07-16 北京京东尚科信息技术有限公司 基于配置信息的数据查询方法和装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040015843A1 (en) * 2001-05-15 2004-01-22 International Business Machines Corporation Method and program product for structured comment assists in computer programming
US7243090B2 (en) * 2001-05-16 2007-07-10 Sun Microsystems, Inc. System and method for specification tracking in a Java compatibility testing environment
US7797687B2 (en) * 2005-08-04 2010-09-14 Microsoft Corporation Parameterized unit tests with behavioral purity axioms
US9471282B2 (en) * 2007-03-21 2016-10-18 Ca, Inc. System and method for using annotations to automatically generate a framework for a custom javaserver faces (JSF) component
US8127275B1 (en) * 2007-04-18 2012-02-28 Parasoft Corporation System and method for recording the state of variables and objects when running unit tests
US8726254B2 (en) * 2009-06-20 2014-05-13 Microsoft Corporation Embedded annotation and program analysis
US8347276B2 (en) * 2010-01-07 2013-01-01 Gunther Schadow Systems and methods for software specification and design using a unified document
US8407807B2 (en) * 2010-05-25 2013-03-26 Microsoft Corporation Dynamic assertion providers for logic-based security policy languages
US9043759B1 (en) * 2011-01-27 2015-05-26 Trimble Navigation Limited System and method for generating software unit tests simultaneously with API documentation
CN102841841B (zh) * 2011-06-20 2016-06-01 阿里巴巴集团控股有限公司 一种测试中的断言处理方法及系统
US9032361B2 (en) * 2011-12-15 2015-05-12 Tata Consultancy Services Limited Agile unit and regression testing framework for domain specific languages
US9419884B1 (en) * 2012-12-28 2016-08-16 Emc Corporation Intelligent automated testing method for restful web services
CN104407973B (zh) * 2014-11-25 2018-04-06 珠海格力电器股份有限公司 一种自动化单元测试的实现方法及装置
US9823904B2 (en) * 2014-12-18 2017-11-21 International Business Machines Corporation Managed assertions in an integrated development environment
US9436582B1 (en) * 2015-11-18 2016-09-06 International Business Machines Corporation Calculating an immediate parent assertion statement for program verification
US20190004932A1 (en) * 2017-06-30 2019-01-03 Infinera Corporation Unit test and automation framework (utaf) system and method
US10503497B2 (en) * 2018-01-30 2019-12-10 Microsoft Technology Licensing, Llc Techniques for utilizing an expression language in service configuration files
CN109101415A (zh) * 2018-06-25 2018-12-28 平安科技(深圳)有限公司 基于数据库比对的接口测试方法、系统、设备和存储介质
CN109522225B (zh) * 2018-11-09 2022-06-07 网宿科技股份有限公司 一种自动化测试断言方法及装置、测试平台及存储介质
CN109558290B (zh) * 2018-11-12 2023-06-02 平安科技(深圳)有限公司 服务器、接口自动化测试方法及存储介质
CN109656813A (zh) * 2018-11-21 2019-04-19 恒为科技(上海)股份有限公司 一种测试用例运行方法及装置
CN110532185B (zh) * 2019-08-29 2023-09-19 中国工商银行股份有限公司 测试方法、装置、电子设备和计算机可读存储介质

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110019350A (zh) * 2017-07-28 2019-07-16 北京京东尚科信息技术有限公司 基于配置信息的数据查询方法和装置

Also Published As

Publication number Publication date
CN110427188A (zh) 2019-11-08

Similar Documents

Publication Publication Date Title
CN110427188B (zh) 单测断言程序的配置方法、装置、设备及存储介质
US9037549B2 (en) System and method for testing data at a data warehouse
CN110908997B (zh) 数据血缘构建方法、装置、服务器及可读存储介质
CA2684822C (en) Data transformation based on a technical design document
US8417690B2 (en) Automatically avoiding unconstrained cartesian product joins
CN106293891B (zh) 多维投资指标监督方法
US9037552B2 (en) Methods for analyzing a database and devices thereof
CN106484699B (zh) 数据库查询字段的生成方法及装置
CN110209700B (zh) 一种数据流关联方法、装置、电子设备及存储介质
CN109710220B (zh) 关系型数据库查询方法、装置、设备及存储介质
CN111626028A (zh) 基于函数解析的报表生成方法、装置、设备及计算机介质
CN108572945A (zh) 创建报表的方法、系统、存储介质、及电子设备
CN109710631A (zh) 辅助生成sql代码的方法、装置、设备及计算机存储介质
CN113268500B (zh) 业务处理方法、装置及电子设备
US20150193213A1 (en) Computer Implemented System and Method for Checking a Program Code
CN109976725B (zh) 一种基于轻量级流程引擎的流程程序开发方法及装置
CN111427784B (zh) 一种数据获取方法、装置、设备及存储介质
CN117194255A (zh) 测试数据维护方法、装置、设备及存储介质
US20210303448A1 (en) Test case generation for software development using machine learning
CN117472641B (zh) 数据质量的检测方法、装置、电子设备及存储介质
CN112597036B (zh) 一种通用测试挡板方法及装置
CN109857390B (zh) 一种Git仓库文件注解系统的注解传递方法
CN117032646A (zh) 指标配置方法、指标执行方法及系统
CN112799638A (zh) 无侵入式快速开发方法、平台、终端及存储介质
CN117216092A (zh) 一种优化tdsql脚本的方法、装置、设备及可读存储介质

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