System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,尤其涉及一种数仓全链路测试方法、装置、设备及存储介质。
技术介绍
1、在数据仓库产出的数据报表进行验证时,传统的验证测试方法,主要是在业务系统发生真实交易后,数据仓库抽取源系统数据并加载至数仓内,通过对数仓作业产出的数据进行测试验证,在此种方法中需要相关技术人员全程高度协同配合,才能实现准确的数仓数据验证测试,且耗时较长,人力成本和时间成本都相对较高。
2、上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
1、本专利技术的主要目的在于提供一种数仓全链路测试方法、装置、设备及存储介质,旨在解决现有技术中数仓数据测试的成本较高且需要人工配合的技术问题。
2、为实现上述目的,本专利技术提供了一种数仓全链路测试方法,所述方法包括以下步骤:
3、在接收到数仓全链路测试请求时,根据所述数仓全链路测试请求搭建全链路测试环境;
4、获取待测试数据和对应的预期结果;
5、通过所述全链路测试环境生成所述待测试数据对应的测试结果;
6、对所述预期结果和所述测试结果进行数据验证,得到目标测试结果。
7、可选地,所述根据所述数仓全链路测试请求搭建全链路测试环境,包括:
8、根据所述数仓全链路测试请求获取链路环境代码和产品代码库;
9、对所述链路环境代码和所述产品代码库中的代码进行一致性检测;
10、在一致性检测通过时,获取本
11、根据所述本地视图数据和表数据生成目标检测脚本;
12、根据所述数仓全链路测试请求搭建全链路测试环境。
13、可选地,所述根据所述本地视图数据和表数据生成目标检测脚本,包括:
14、根据所述本地视图数据和表数据生成初始检测脚本;
15、获取所述初始检测脚本的执行日志;
16、根据所述执行日志确定执行成功的检测脚本;
17、控制所述执行成功的检测脚本进行空跑,并生成空跑执行日志;
18、根据所述空跑执行日志确定目标检测脚本。
19、可选地,所述根据所述数仓全链路测试请求搭建全链路测试环境之前,还包括:
20、根据所述数仓全链路测试请求获取仓内初始作业清单和对应的作业源码;
21、解析所述作业源码,得到所述初始作业清单的输入-输出关系和字段加工信息;
22、根据所述输入-输出关系生成目标加工链路模板;
23、根据所述字段加工信息和所述目标加工链路模板生成预设仓内全链路加工过程分析结果。
24、可选地,所述解析所述作业源码,包括:
25、解析所述作业源码,得到所述作业源码对应的初始作业输入-输出关系;
26、根据所述初始作业输入-输出关系确定待使用视图数据和表数据;
27、在存在新增的待使用视图数据和表数据时,根据新增的待使用视图数据和表数据确定更新初始作业清单,得到目标作业清单,并解析所述目标作业清单对应的作业源码,以得到对应的输入-输出关系;
28、在不存在新增的待使用视图数据和表数据时,解析所述作业源码,以得到对应的输入-输出关系。
29、可选地,所述根据所述输入-输出关系生成目标加工链路模板,包括:
30、根据所述输入-输出关系构建初始加工链路;
31、基于预设源系统信息和所述初始加工链路生成目标加工链路模板,所述目标加工链路模板为字段级别的加工链路模板。
32、可选地,获取待测试数据的步骤,包括:
33、获取业务系统中的环境信息;
34、基于所述全链路测试环境抽取目标表清单,并根据所述目标表清单得到仓内-仓外映射关系表;
35、将所述环境信息配置到仓内-仓外映射关系表,得到目标映射关系表;
36、根据所述目标映射关系表构建入库脚本;
37、根据所述入库脚本将所述目标映射关系表进行入库,并进行入库表数据量检查;
38、在检查无误时,从数据库中获取待测试数据。
39、此外,为实现上述目的,本专利技术还提出一种数仓全链路测试装置,所述数仓全链路测试装置包括:
40、构建模块,用于在接收到数仓全链路测试请求时,根据所述数仓全链路测试请求搭建全链路测试环境;
41、获取模块,用于获取待测试数据和对应的预期结果;
42、测试模块,用于通过所述全链路测试环境生成所述待测试数据对应的测试结果;
43、验证模块,用于对所述预期结果和所述测试结果进行数据验证,得到目标测试结果。
44、此外,为实现上述目的,本专利技术还提出一种数仓全链路测试设备,所述数仓全链路测试设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数仓全链路测试程序,所述数仓全链路测试程序配置为实现如上文所述的数仓全链路测试方法的步骤。
45、此外,为实现上述目的,本专利技术还提出一种存储介质,所述存储介质上存储有数仓全链路测试程序,所述数仓全链路测试程序被处理器执行时实现如上文所述的数仓全链路测试方法的步骤。
46、本专利技术公开了一种数仓全链路测试方法,所述数仓全链路测试方法包括:在接收到数仓全链路测试请求时,根据所述数仓全链路测试请求搭建全链路测试环境;获取待测试数据和对应的预期结果;通过所述全链路测试环境生成所述待测试数据对应的测试结果;对所述预期结果和所述测试结果进行数据验证,得到目标测试结果,与现有技术相比,本专利技术通过根据数仓全链路测试请求预先搭建全链路测试环境,并获取待测试数据和对应的预期结果,再通过搭建好的全链路测试环境预测待测试数据对应的测试结果,最后通过对预期结果和测试结果进行数据验证,从而实现数仓内数据的直接测试,无需数仓产出数据等步骤,简化了数仓数据验证测试的流程,减小了验证周期,避免了现有技术中数仓数据测试的成本较高且需要人工配合的技术问题,提高了数仓数据的测试效率。
本文档来自技高网...【技术保护点】
1.一种数仓全链路测试方法,其特征在于,所述数仓全链路测试方法包括:
2.如权利要求1所述的数仓全链路测试方法,其特征在于,所述根据所述数仓全链路测试请求搭建全链路测试环境,包括:
3.如权利要求2所述的数仓全链路测试方法,其特征在于,所述根据所述本地视图数据和表数据生成目标检测脚本,包括:
4.如权利要求1所述的数仓全链路测试方法,其特征在于,所述根据所述数仓全链路测试请求搭建全链路测试环境之前,还包括:
5.如权利要求4所述的数仓全链路测试方法,其特征在于,所述解析所述作业源码,包括:
6.如权利要求4所述的数仓全链路测试方法,其特征在于,所述根据所述输入-输出关系生成目标加工链路模板,包括:
7.如权利要求1所述的数仓全链路测试方法,其特征在于,获取待测试数据的步骤,包括:
8.一种数仓全链路测试装置,其特征在于,所述数仓全链路测试装置包括:
9.一种数仓全链路测试设备,其特征在于,所述数仓全链路测试设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数仓全链路测
10.一种存储介质,其特征在于,所述存储介质上存储有数仓全链路测试程序,所述数仓全链路测试程序被处理器执行时实现如权利要求1至7任一项所述的数仓全链路测试方法。
...【技术特征摘要】
1.一种数仓全链路测试方法,其特征在于,所述数仓全链路测试方法包括:
2.如权利要求1所述的数仓全链路测试方法,其特征在于,所述根据所述数仓全链路测试请求搭建全链路测试环境,包括:
3.如权利要求2所述的数仓全链路测试方法,其特征在于,所述根据所述本地视图数据和表数据生成目标检测脚本,包括:
4.如权利要求1所述的数仓全链路测试方法,其特征在于,所述根据所述数仓全链路测试请求搭建全链路测试环境之前,还包括:
5.如权利要求4所述的数仓全链路测试方法,其特征在于,所述解析所述作业源码,包括:
6.如权利要求4所述的数仓全链路测试方法,其特征在于,所述根据所述输入-输...
【专利技术属性】
技术研发人员:陈敏,
申请(专利权)人:招商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。