CN110262969A - 报表测试方法、装置、电子设备及计算机可读存储介质 - Google Patents

报表测试方法、装置、电子设备及计算机可读存储介质 Download PDF

Info

Publication number
CN110262969A
CN110262969A CN201910509940.6A CN201910509940A CN110262969A CN 110262969 A CN110262969 A CN 110262969A CN 201910509940 A CN201910509940 A CN 201910509940A CN 110262969 A CN110262969 A CN 110262969A
Authority
CN
China
Prior art keywords
data
file
middle table
user
stored
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
Application number
CN201910509940.6A
Other languages
English (en)
Other versions
CN110262969B (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.)
Taikang Insurance Group Co Ltd
Original Assignee
Taikang Insurance Group 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 Taikang Insurance Group Co Ltd filed Critical Taikang Insurance Group Co Ltd
Priority to CN201910509940.6A priority Critical patent/CN110262969B/zh
Publication of CN110262969A publication Critical patent/CN110262969A/zh
Application granted granted Critical
Publication of CN110262969B publication Critical patent/CN110262969B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开一种报表测试方法、装置、电子设备及计算机可读存储介质。该报表测试方法包括:获取并存储非关系型数据库中存储的多条第一数据;通过第一文件将存储的所述第一数据导入至中间表中,所述第一文件具有与所述中间表相同的多个字段;获取关系型数据库中存储的多条第二数据,并将所述第二数据存储在第二文件中,所述第二文件具有与所述中间表相同的所述多个字段;通过所述第二文件将所述第二数据导入至所述中间表中;以及基于所述中间表对待测试的报表指标进行查询测试。根据本发明提供的报表测试方法,可有效地规避非关系型数据库查询测试难度大的限制,显著地提高测试效率。

Description

报表测试方法、装置、电子设备及计算机可读存储介质
技术领域
本发明涉及大数据领域,具体而言,涉及一种报表测试方法、装置、电子设备及计算机可读存储介质。
背景技术
目前,数据库系统中包括关系型数据库和非关系型数据库。以面向集合的表格型数据库MySQL为例的关系型数据库中,信息存放在二维表中。一个关系型数据库可以包括多张二维表,一张二维表是一组相关的按行排列的数据,表中的每一列称为一个字段。
以面向集合的文档型数据库MongoDB为例的非关系型数据库中,基于分布式文件对数据进行存储。MongoDB将数据存储为一个文档,数据结构由键值对(key-value)组成。
在目前的很多业务系统中,为了降低数据的耦合性,会将不同的业务划分为多个领域,通过各领域协作来完成业务整体流程。不同领域中的数据会被分别存储在不同类型的数据库中,例如某些领域中的数据被存储在关系型数据库中,而某些领域中的数据则被存储在非关系型数据库中。
在需要对不同领域中的数据进行处理时,例如对基于不同领域数据生成的报表进行测试时,往往需要分别对两个数据库的数据进行查询计算,再针对部分指标,进行汇总计算。这种方式需要花费大量时间成本和人力成本,同时也降低了测试效率。
在所述背景技术部分公开的上述信息仅用于加强对本发明的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本发明提供一种报表测试方法、装置、电子设备及计算机可读存储介质。
本发明的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本发明的实践而习得。
根据本发明的一方面,提供一种报表测试方法,包括:获取并存储非关系型数据库中存储的多条第一数据;通过第一文件将存储的所述第一数据导入至中间表中,所述第一文件具有与所述中间表相同的多个字段;获取关系型数据库中存储的多条第二数据,并将所述第二数据存储在第二文件中,所述第二文件具有与所述中间表相同的所述多个字段;通过所述第二文件将所述第二数据导入至所述中间表中;以及基于所述中间表对待测试的报表指标进行查询测试。
根据本发明的一实施方式,所述第一数据包括用户预订数据;所述第一文件包括第一CSV(Comma-Separated Values,字符分隔值)类型文件;所述第二数据包括用户居住数据;所述第二文件包括第二CSV类型文件;其中,获取并存储非关系型数据库中存储的多条第一数据包括:获取非关系型数据库中存储的多条用户预订数据,并将所述多条用户预订数据存储在JSON(JavaScript Object Notation,JS对象简谱)类型文件中;其中,通过第一文件将存储的所述第一数据导入至所述中间表中包括:根据所述中间表,生成所述第一CSV类型文件;分别获取所述JSON类型文件中所述多条用户预订数据中对应所述多个字段的值,并将各所述值存储在所述第一CSV类型文件中的相应字段下;以及使所述第一CSV类型文件中的数据被导入至所述中间表中。
根据本发明的一实施方式,所述中间表包含所述用户预订数据和所述用户居住数据中具有相同业务含义的字段,所述字段包括机构编码、照护区编码、用户编码、用户状态、房间编码、床位编码、创建时间或更新时间的至少其中之一。
根据本发明的一实施方式,当所述用户预订数据不包含所述中间表中的一个或多个字段时,导入所述用户预订数据后的所述中间表中所述一个或多个字段被设置为空。
根据本发明的一实施方式,所述用户预订数据中的用户状态包括:预订状态、退订状态、排号状态、退号状态、预订转入住状态中的部分或全部。
根据本发明的一实施方式,分别获取所述JSON类型文件中所述多条用户预订数据中对应所述多个字段的值,并将各所述值存储在所述第一CSV类型文件中的相应字段下包括:分别获取所述JSON类型文件中所述多条用户预订数据中、所述用户状态不为所述预订转入住状态的用户预订数据中对应所述多个字段的值,并将各所述值存储在所述第一CSV类型文件中的相应字段下。
根据本发明的一实施方式,所述非关系数据库为MongoDB数据库,和/或所述关系型数据库为MySQL数据库。
根据本发明的另一方面,提供一种报表测试装置,包括:第一数据获取模块,用于获取并存储非关系型数据库中存储的多条第一数据;第一数据导入模块,用于通过第一文件将存储的所述第一数据导入至中间表中,所述第一文件具有与所述中间表相同的多个字段;第二数据获取模块,用于获取关系型数据库中存储的多条第二数据,并将所述第二数据存储在第二文件中,所述第二文件具有与所述中间表相同的所述多个字段;第二数据导入模块,用于通过所述第二文件将所述第二数据导入至所述中间表中;以及报表指标测试模块,用于基于所述中间表对待测试的报表指标进行查询测试。
根据本发明的再一方面,提供一种电子设备,包括:存储器、处理器及存储在所述存储器中并可在所述处理器中运行的可执行指令,所述处理器执行所述可执行指令时实现如上述任一种报表测试方法。
根据本发明的再一方面,提供一种计算机可读存储介质,其上存储有计算机可执行指令,所述可执行指令被处理器执行时实现如上述任一种报表测试方法。
根据本发明提供的报表测试方法,基于存储了来自非关系型数据库的第一数据和来自关系型数据库的第二数据的中间表,通过预先编写的查询代码对待测试的报表指标进行查询测试,实现跨非关系型数据库和关系型数据库两种不同类型数据库进行整体测试统计的操作,有效地规避了非关系型数据库查询测试难度大的限制,显著地提高测试效率,同时相较于对两类数据库分别测试统计再做汇总统计的方法,本方法消除了人工干预度过大而可能带来的错误。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本发明。
附图说明
通过参照附图详细描述其示例实施例,本发明的上述和其它目标、特征及优点将变得更加显而易见。
图1是根据一示例性实施方式示出的一种报表测试方法的流程图。
图2是根据一示例性实施方式示出的另一种报表测试方法的流程图。
图3是根据一示例性实施例示出的一种将第一、第二数据导入中间表的示意图。
图4是根据一示例性实施方式示出的一种报表测试装置的框图。
图5是根据一示例性实施方式示出的一种电子设备的结构示意图。
图6是根据一示例性实施方式示出的一种计算机可读存储介质的示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。附图仅为本发明的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本发明的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现或者操作以避免喧宾夺主而使得本发明的各方面变得模糊。
此外,在本发明的描述中,“多条”的含义是至少两条,例如两条,三条等,除非另有明确具体的限定。符号“/”一般表示前后关联对象是一种“或”的关系。术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
图1是根据一示例性实施方式示出的一种报表测试方法的流程图。
参考图1,报表测试方法10包括:
在步骤S102中,获取并存储非关系型数据库中存储的多条第一数据。
在步骤S104中,通过第一文件将存储的第一数据导入至中间表中。
第一文件具有与中间表相同的多个字段。
在步骤S106中,获取关系型数据库中存储的多条第二数据,并将第二数据存储在第二文件中。
第二文件具有与中间表相同的多个字段。
在步骤S108中,通过第二文件将第二数据导入至中间表中。
在一些实施例中,第一数据包括:用户预订数据;第一文件包括:第一CSV类型文件;第二数据包括:用户居住数据;第二文件包括:第二CSV类型文件。以一预订系统为例,该预订系统例如可以为对养老社区中的床位和/或房间的预订。在该系统中,例如将排号、退号、预订、退订、排号转预订、预订转入住等预订相关数据划分至预订领域实现,并使用非关系型数据库对用户预订数据进行存储。而将入住、退住、外出、离世等居住相关数据划分至居住领域实现,并使用关系型数据库对用户居住数据进行存储。
例如,当用户进行排号/退号操作时,预订数据中没有楼号/房号/床号信息;当用户进行预订/退订操作时,预订数据中记录有楼号/房号/床号信息,预订数据存储在上述非关系型数据库中。当用户进行入住/退住操作时,居住数据中记录有楼号/房号/床号等信息,居住数据存储在上述关系型数据库中。
承上述,在一些实施例中,中间表是根据存储在非关系型数据中的用户预订数据和存储在关系型数据库中的用户居住数据中的通用字段及测试需求字段而预定义的,因此中间表具有与第二CSV类型文件相同的多个字段。因此,首先可以通过例如数据库工具export(导出)功能,将从关系型数据库中获取的多条用户居住数据按相应字段直接存储在第二CSV类型文件中(步骤S106)。然后,可通过数据库工具直接将第二CSV类型文件中的数据导入至中间表中,也可以通过命令行将第二CSV类型文件中的数据导入至中间表中(步骤S108)。
在步骤S110中,基于中间表对待测试的报表指标进行查询测试,例如通过预先编写的查询代码对待测试的报表指标进行查询测试。
在上述步骤中,来自非关系型数据库的第一数据和来自关系型数据库的第二数据被统一存储在中间表中。基于该中间表,通过查询代码对报表指标进行查询测试。
根据本发明实施方式提供的报表测试方法,基于存储了来自非关系型数据库的第一数据和来自关系型数据库的第二数据的中间表,通过预先编写的查询代码对待测试的报表指标进行查询测试,实现跨非关系型数据库和关系型数据库两种不同类型数据库进行整体测试统计的操作,有效地规避了非关系型数据库查询测试难度大的限制,显著地提高测试效率,同时相较于对两类数据库分别测试统计再做汇总统计的方法,本方法消除了人工干预度过大而可能带来的错误。
应清楚地理解,本发明描述了如何形成和使用特定示例,但本发明的原理不限于这些示例的任何细节。相反,基于本发明公开的内容的教导,这些原理能够应用于许多其它实施方式。
图2是根据一示例性实施方式示出的另一种报表测试方法的流程图。与图1所示方法10的不同之处在于,图2所示的方法20进一步提供了将第一数据导入至中间表中的方法。
仍以上述的预订系统为例,该预订系统中的关系型数据库例如可以为MySQL数据库,非关系型数据库例如可以为MongoDB数据库。参考图2,报表测试方法20包括:
在步骤S202中,获取非关系型数据库中存储的多条用户预订数据,并将多条用户预订数据存储在JSON类型文件中。
在一些实施例中,例如可以通过MongoDB数据库自带的工具mongoexport,获取MongoDB数据库中存储的多条用户预订数据,并将多条用户预订数据存储在JSON类型文件中。存储的JSON类型文件由行数据组成,JSON类型文件中的每一行对应MongoDB数据库中的一条用户预订数据。
在步骤S204中,根据中间表,生成第一CSV类型文件。
其中,第一CSV类型文件具有与中间表相同的多个字段。
首先,预定义一张关系型数据库中间表,也即该中间表与关系型数据库中存储的二维表的格式一致。该中间表中的字段是根据上述预订领域中的用户预订数据及居住领域中的用户居住数据以及报表指标而确定的。
表1是根据一示例示出的上述关系型数据库中二维表中的主要字段。
表1
字段名 描述 字段类型 是否主键 是否可空 备注
id Id varchar(32) Y N
customer_cd 用户编码 varchar(32) N Y
customer_name 客户姓名 varchar(100) N Y
own_org_cd 机构编码 varchar(500) N Y
ward_cd 照护区编码 varchar(32) N Y
building_cd 楼栋编码 varchar(32) N Y
room_cd 房间编码 varchar(32) N Y
bed_cd 床位编码 varchar(32) N Y
status_cd 用户状态编码 varchar(32) N Y 004/005
care_level_cd 护理等级编码 varchar(32) N Y
be_out_flag 外出标志 tinyint(1) N Y
created_time 创建时间 datetime N Y
last_updated_time 最后修改时间 datetime N Y
表2是根据一示例示出的示出的上述非关系型数据库中存储的用户预订数据的主要字段,需要说明的是,其仅作为示例而非限制本发明。
表2
可以分别提取出用户预订数据及用户居住数据中的通用数据字段,再根据报表指标需要建立该中间表。例如,从上述两种数据类型中提取业务含义相同的字段,包括机构编码、照护区编码、用户编码、用户状态、房间编码、床位编码、创建时间或更新时间的至少其中之一。当MongoDB数据库中存储的用户预订数据不包含中间表中的一个或多个字段时(例如排号类数据不存在房间、床位信息,预订包房类数据不存在床位信息等),导入用户预订数据后的中间表中一个或多个字段被设置为空。
在步骤S206中,分别获取JSON类型文件中多条用户预订数据中对应多个字段的值,并将各值存储在第一CSV类型文件中的相应字段下。
例如,可以通过预先编写的python脚本程序,分别获取JSON类型文件中多条用户预订数据中对应多个字段的值,并将各值存储在第一CSV类型文件中的相应字段下,因而在每次测试过程中可以实现一键执行,从而大大提高数据准备过程效率。
如上述,因第一CSV类型文件具有与中间表相同的多个字段,生成的第一CSV类型文件中例如可以具有表头:customerId、orgCd、statusCd、nursAreaCode、roomCode、bedCode、createTime、updateTime,分别对应中间表字段:用户编码、机构编码、用户状态、照护区编码、房间编码、床位编码、创建时间、更新时间。
遍历JSON类型文件内的每一行数据,每行数据为一条完整的JSON文档,对应一条用户预订数据。提取对应键的值保存在第一CSV类型文件中。
当用户进行排号、退号、预订、退订、入住、退住等操作时,每个动作节点对应一个当前状态,无论在上述居住领域还是预订领域,业务数据都保存该用户的当前用户状态。例如,在预订领域,每条用户预订数据中均包含用户状态。在一些实施例中,用户预订数据中的用户状态包括:预订状态、退订状态、排号状态、退号状态、预订转入住状态中的部分或全部。
在一些实施例中,分别获取JSON类型文件中多条用户预订数据中对应多个字段的值,并将各值存储在第一CSV类型文件中的相应字段下包括:分别获取JSON类型文件中多条用户预订数据中、用户状态不为预订转入住状态的用户预订数据中对应多个字段的值,并将各值存储在第一CSV类型文件中的相应字段下。
在步骤S208中,使第一CSV类型文件中的数据被导入至中间表中。
例如,可通过数据库工具直接将第一CSV类型文件中的数据导入至中间表中,或者也可以通过命令行将第一CSV类型文件中的数据导入至中间表中。
图3是根据一示例性实施例示出的一种将第一、第二数据导入中间表的示意图。参考图3,其中JSON类型文件(仅显示部分)内的格式化数据对应MongoDB数据库中的一条文档(即第一数据),其中有些字段(例如用户编码customerId)为嵌套字段,提取其中对应键的值保存至本地第一CSV类型文件(仅显示部分)的对应列中,通过数据库工具或者命令行将第一CSV类型文件中的该行数据导入至中间表(仅显示部分)中,完成第一数据的导入。根据报表指标提取MySQL数据库中一条文档(即第二数据)中的所需字段对应键的值,保存至本地第二CSV类型文件(仅显示部分)的对应列中,再通过数据库工具或者命令行将第二CSV类型文件中的该行数据导入至中间表中,完成第二数据的导入。图3中的文件数据和字段键值仅作为示例性说明,本发明并不以此为限。
在上述步骤中,已经将两个领域的两条数据汇总存储在中间表中,且中间表是关系型数据库MySQL内数据表,在后续的报表测试过程中测试人员可以通过编写熟知的SQL语句以便捷地对报表指标进行查询测试。
本领域技术人员可以理解实现上述实施方式的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本发明提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本发明示例性实施方式的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
图4是根据一示例性实施方式示出的一种报表测试装置的框图。如图4所示的报表测试装置例如可以应用于上述养老社区床位/房间预订系统的报表指标测试中。
参考图4,报表测试装置40包括:第一数据获取模块402、第一数据导入模块404、第二数据获取模块406、第二数据导入模块408及报表指标测试模块410。
其中,第一数据获取模块402用于获取并存储非关系型数据库中存储的多条第一数据。
第一数据导入模块404用于通过第一文件将存储的第一数据导入至中间表中。其中,第一文件具有与中间表相同的多个字段。
第二数据获取模块406用于获取关系型数据库中存储的多条第二数据,并将第二数据存储在第二文件中。其中,第二文件具有与中间表相同的多个字段。
第二数据导入模块408用于通过第二文件将第二数据导入至中间表中。
报表指标测试模块410用于基于中间表对待测试的报表指标进行查询测试。
在一些实施例中,装置40所处理的非关系型数据库为MongoDB数据库,所处理的关系型数据库为MySQL数据库。
以测试上述预订系统为例,第一数据包括:用户预订数据;第一文件包括:第一CSV类型文件;第二数据包括:用户居住数据;第二文件包括:第二CSV类型文件。第一数据获取模块402包括:第一存储单元,用于获取非关系型数据库中存储的多条用户预订数据,并将多条用户预订数据存储在JSON类型文件中。在一些实施例中,第一数据获取模块402获取的用户预订数据中的用户状态包括:预订状态、退订状态、排号状态、退号状态、预订转入住状态中的部分或全部。
第一数据导入模块404包括:
文件生成单元,用于根据中间表,生成第一CSV类型文件;
第二存储单元,用于分别获取JSON类型文件中多条用户预订数据中对应多个字段的值,并将各值存储在第一CSV类型文件中的相应字段下。在一些实施例中,第二存储单元用于分别获取JSON类型文件中多条用户预订数据中、用户状态不为预订转入住状态的用户预订数据中对应多个字段的值,并将各值存储在第一CSV类型文件中的相应字段下;以及
数据导入单元,用于使第一CSV类型文件中的数据被导入至中间表中。
第一数据获取模块402和第一数据导入模块404可以实现将存储在MongoDB数据库中的多条用户预订数据导入至MySQL数据库中间表中。
根据本发明实施方式提供的报表测试装置,基于存储了来自非关系型数据库的第一数据和来自关系型数据库的第二数据的中间表,通过预先编写的查询代码对待测试的报表指标进行查询测试,实现跨非关系型数据库和关系型数据库两种不同类型数据库进行整体测试统计的操作,有效地规避了非关系型数据库查询测试难度大的限制,显著地提高测试效率,同时相较于对两类数据库分别测试统计再做汇总统计的装置,本装置消除了人工干预度过大而可能带来的错误。
需要注意的是,上述附图中所示的框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图5是根据一示例性实施方式示出的一种电子设备的结构示意图。需要说明的是,图5示出的电子设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,电子设备500以通用计算机设备的形式表现。电子设备500的组件包括:至少一个中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序代码或者从至少一个存储单元508加载到随机访问存储器(RAM)503中的程序代码而执行各种适当的动作和处理。
特别地,根据本发明的实施例,所述程序代码可以被中央处理单元501执行,使得中央处理单元501执行本说明书上述方法实施例部分中描述的根据本发明各种示例性实施方式的步骤。例如,中央处理单元501可以执行如图1或图2中所示的步骤。
在RAM 503中,还存储有电子设备500操作所需的各种程序和数据。CPU 501、ROM502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入单元506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出单元507;包括硬盘等的存储单元508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信单元509。通信单元509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储单元508。
图6是根据一示例性实施方式示出的一种计算机可读存储介质的示意图。
参考图6所示,描述了根据本发明的实施方式的设置为实现上述方法的程序产品600,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如图1或图2中所示的功能。
以上具体地示出和描述了本发明的示例性实施方式。应可理解的是,本发明不限于这里描述的详细结构、设置方式或实现方法;相反,本发明意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。

Claims (10)

1.一种报表测试方法,其特征在于,包括:
获取并存储非关系型数据库中存储的多条第一数据;
通过第一文件将存储的所述第一数据导入至中间表中,所述第一文件具有与所述中间表相同的多个字段;
获取关系型数据库中存储的多条第二数据,并将所述第二数据存储在第二文件中,所述第二文件具有与所述中间表相同的所述多个字段;
通过所述第二文件将所述第二数据导入至所述中间表中;以及
基于所述中间表对待测试的报表指标进行查询测试。
2.根据权利要求1所述的方法,其特征在于,所述第一数据包括用户预订数据;所述第一文件包括第一字符分隔值CSV类型文件;所述第二数据包括用户居住数据;所述第二文件包括第二CSV类型文件;
其中,获取并存储非关系型数据库中存储的多条第一数据包括:
获取非关系型数据库中存储的多条用户预订数据,并将所述多条用户预订数据存储在JSON类型文件中;
其中,通过第一文件将存储的所述第一数据导入至所述中间表中包括:
根据所述中间表,生成所述第一CSV类型文件;
分别获取所述JSON类型文件中所述多条用户预订数据中对应所述多个字段的值,并将各所述值存储在所述第一CSV类型文件中的相应字段下;以及
使所述第一CSV类型文件中的数据被导入至所述中间表中。
3.根据权利要求2所述的方法,其特征在于,所述中间表包含所述用户预订数据和所述用户居住数据中具有相同业务含义的字段,所述字段包括机构编码、照护区编码、用户编码、用户状态、房间编码、床位编码、创建时间或更新时间的至少其中之一。
4.根据权利要求2所述的方法,其特征在于,当所述用户预订数据不包含所述中间表中的一个或多个字段时,导入所述用户预订数据后的所述中间表中所述一个或多个字段被设置为空。
5.根据权利要求2所述的方法,其特征在于,所述用户预订数据中的用户状态包括:预订状态、退订状态、排号状态、退号状态、预订转入住状态中的部分或全部。
6.根据权利要求5所述的方法,其特征在于,分别获取所述JSON类型文件中所述多条用户预订数据中对应所述多个字段的值,并将各所述值存储在所述第一CSV类型文件中的相应字段下包括:
分别获取所述JSON类型文件中所述多条用户预订数据中、所述用户状态不为所述预订转入住状态的用户预订数据中对应所述多个字段的值,并将各所述值存储在所述第一CSV类型文件中的相应字段下。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述非关系数据库为MongoDB数据库,和/或所述关系型数据库为MySQL数据库。
8.一种报表测试装置,其特征在于,包括:
第一数据获取模块,用于获取并存储非关系型数据库中存储的多条第一数据;
第一数据导入模块,用于通过第一文件将存储的所述第一数据导入至中间表中,所述第一文件具有与所述中间表相同的多个字段;
第二数据获取模块,用于获取关系型数据库中存储的多条第二数据,并将所述第二数据存储在第二文件中,所述第二文件具有与所述中间表相同的所述多个字段;
第二数据导入模块,用于通过所述第二文件将所述第二数据导入至所述中间表中;以及
报表指标测试模块,用于基于所述中间表对待测试的报表指标进行查询测试。
9.一种电子设备,包括:存储器、处理器及存储在所述存储器中并可在所述处理器中运行的可执行指令,其特征在于,所述处理器执行所述可执行指令时实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机可执行指令,其特征在于,所述可执行指令被处理器执行时实现如权利要求1-7任一项所述的方法。
CN201910509940.6A 2019-06-13 2019-06-13 报表测试方法、装置、电子设备及计算机可读存储介质 Active CN110262969B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910509940.6A CN110262969B (zh) 2019-06-13 2019-06-13 报表测试方法、装置、电子设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910509940.6A CN110262969B (zh) 2019-06-13 2019-06-13 报表测试方法、装置、电子设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN110262969A true CN110262969A (zh) 2019-09-20
CN110262969B CN110262969B (zh) 2022-03-22

Family

ID=67917960

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910509940.6A Active CN110262969B (zh) 2019-06-13 2019-06-13 报表测试方法、装置、电子设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110262969B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625453A (zh) * 2020-05-22 2020-09-04 泰康保险集团股份有限公司 养老机构的自动化测试方法及平台、存储介质、电子设备
CN113239070A (zh) * 2021-06-18 2021-08-10 广州小鹏汽车科技有限公司 数据查询方法、装置及电子设备
WO2022205938A1 (zh) * 2021-03-30 2022-10-06 苏宁易购集团股份有限公司 数据采集方法、装置、计算机设备和存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101714157A (zh) * 2009-09-29 2010-05-26 金蝶软件(中国)有限公司 异构数据库报表生成方法、装置和异构数据库系统
CN102073701A (zh) * 2010-12-30 2011-05-25 浪潮集团山东通用软件有限公司 一种基于语义定义的多数据源的数据查询方法
CA2722698A1 (en) * 2010-11-15 2012-05-15 Abubaker Hamid Computer programming language for random data generation in java environment built on eclipse, generates csv files, sql files, xml files, json files and populates rdbms databases directly, that generates data in any human language written in utf-8 encoding
CN105260403A (zh) * 2015-09-22 2016-01-20 广东同望科技股份有限公司 通用跨数据库访问方法
CN105335459A (zh) * 2015-09-24 2016-02-17 四川长虹电器股份有限公司 基于xbrl智能报告平台的合并报表数据抽取方法
CN105938479A (zh) * 2016-03-31 2016-09-14 华南师范大学 一种关系表与非关系表的结构转换方法
CN106156330A (zh) * 2016-07-06 2016-11-23 北京金山安全管理系统技术有限公司 一种数据库适配方法及数据库适配器
US20170076297A1 (en) * 2015-09-10 2017-03-16 Salesforce.Com, Inc. Polarity turn-around time of social media posts
US20180150503A1 (en) * 2016-11-29 2018-05-31 International Business Machines Corporation QUERY PROCESSING WITH BOUNDED STALENESS FOR TRANSACTIONAL MUTATIONS IN NoSQL DATABASE
CN108446335A (zh) * 2018-02-27 2018-08-24 广州港数据科技有限公司 基于数据库的异构系统数据抽取及统一对外数据交换方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101714157A (zh) * 2009-09-29 2010-05-26 金蝶软件(中国)有限公司 异构数据库报表生成方法、装置和异构数据库系统
CA2722698A1 (en) * 2010-11-15 2012-05-15 Abubaker Hamid Computer programming language for random data generation in java environment built on eclipse, generates csv files, sql files, xml files, json files and populates rdbms databases directly, that generates data in any human language written in utf-8 encoding
CN102073701A (zh) * 2010-12-30 2011-05-25 浪潮集团山东通用软件有限公司 一种基于语义定义的多数据源的数据查询方法
US20170076297A1 (en) * 2015-09-10 2017-03-16 Salesforce.Com, Inc. Polarity turn-around time of social media posts
CN105260403A (zh) * 2015-09-22 2016-01-20 广东同望科技股份有限公司 通用跨数据库访问方法
CN105335459A (zh) * 2015-09-24 2016-02-17 四川长虹电器股份有限公司 基于xbrl智能报告平台的合并报表数据抽取方法
CN105938479A (zh) * 2016-03-31 2016-09-14 华南师范大学 一种关系表与非关系表的结构转换方法
CN106156330A (zh) * 2016-07-06 2016-11-23 北京金山安全管理系统技术有限公司 一种数据库适配方法及数据库适配器
US20180150503A1 (en) * 2016-11-29 2018-05-31 International Business Machines Corporation QUERY PROCESSING WITH BOUNDED STALENESS FOR TRANSACTIONAL MUTATIONS IN NoSQL DATABASE
CN108446335A (zh) * 2018-02-27 2018-08-24 广州港数据科技有限公司 基于数据库的异构系统数据抽取及统一对外数据交换方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
GREGORIUS ONGO: "Hybrid Database System of MySQL and MongoDB in Web Application Development", 《2018 INTERNATIONAL CONFERENCE ON INFORMATION MANAGEMENT AND TECHNOLOGY (ICIMTECH)》 *
WEIXIN_304852: "关于mongodb当中的数据导入到mysql数据", 《HTTPS://BLOG.CSDN.NET/WEIXIN_30485291/ARTICLE/DETAILS/95001942》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111625453A (zh) * 2020-05-22 2020-09-04 泰康保险集团股份有限公司 养老机构的自动化测试方法及平台、存储介质、电子设备
CN111625453B (zh) * 2020-05-22 2023-07-14 泰康保险集团股份有限公司 养老机构的自动化测试方法及平台、存储介质、电子设备
WO2022205938A1 (zh) * 2021-03-30 2022-10-06 苏宁易购集团股份有限公司 数据采集方法、装置、计算机设备和存储介质
CN113239070A (zh) * 2021-06-18 2021-08-10 广州小鹏汽车科技有限公司 数据查询方法、装置及电子设备

Also Published As

Publication number Publication date
CN110262969B (zh) 2022-03-22

Similar Documents

Publication Publication Date Title
CN110262969A (zh) 报表测试方法、装置、电子设备及计算机可读存储介质
Ayers Density per particle as a descriptor of Coulombic systems
US9411712B2 (en) Generating test data
CN107533570B (zh) 用于从表格数据自动推断立方体模式的系统和方法
CN111126019B (zh) 基于模式定制的报表生成方法、装置和电子设备
US20170193375A1 (en) Rule guided fabrication of structured data and messages
CN110750969B (zh) 一种生成报表的方法及装置
CN111046237A (zh) 用户行为数据处理方法、装置、电子设备及可读介质
Liu et al. GenealogyVis: A system for visual analysis of multidimensional genealogical data
CN111723086A (zh) 一种数据质量检核方法、装置、设备及可读存储介质
CN110728122A (zh) 表格生成方法及装置
CN110389941A (zh) 数据库校验方法、装置、设备及存储介质
CN108960672A (zh) 限额限次的风控方法、装置及计算机可读存储介质
CN108694194A (zh) 一种构造数据对象的方法和装置
CN108345646B (zh) 一种运用拦截技术快速自动构建多维度报表的方法
CN102866985B (zh) 用于联机分析处理系统的数据格式化装置和方法
US11321314B2 (en) Query content-based data generation
CN114610751B (zh) 地理计算语言的结构化参数解析方法、装置、设备及介质
Yuan et al. Bayesian hypothesis tests using nonparametric statistics
CN112085704A (zh) 医学图像分类方法、装置、终端设备及存储介质
CN110750569A (zh) 数据提取方法、装置、设备及存储介质
US20100325586A1 (en) Computer-Implemented Systems And Methods For Efficiently Selecting Data In Multi-Dimensional Hierarchical Space With Multiple Constraints
CN115438640A (zh) 数据生成方法、装置、电子设备及存储介质
Nielsen et al. Computing statistical divergences with sigma points
CN111832304A (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