本申请实施例公开了一种数据自动化测试方法及装置。通过对被测数据集进行抽样,获得代表被测数据特征的抽样数据集,获得抽样数据集后,判断其每列数据的类型,根据每列数据的类型查找对应的数据检测规则,运行所述规则得到异常数据,完成数据测试。由于以抽样数据集替代被测数据集进行测试,降低了数据测试量和规则编制量,提高了测试效率。
【技术实现步骤摘要】
本专利技术涉及数据库
,尤其涉及一种数据自动化测试方法及装置。
技术介绍
数据在信息整合、程序执行或者数据库迁移等过程中,会因为系统、网络或者数据处理等出现错误引起数据的缺失或异常,因此在使用数据前,例如在信息整合之后展示整合的数据之前,或者数据库迁移之后,需要对数据进行测试,以保证数据的完整、正确和一致。在数据库系统中,通常以数据表的形式组织数据。数据测试的主要手段或方法是根据数据表每列所代表的类型或含义,编写相应的数据检测规则,然后对数据进行全量扫描,从而得到不符合所述规则的异常数据。但是,当数据类型较多时,如果对每份数据的每一列都要配置相应的数据检测规则去测试,效率会非常低。而且如果数据的类型发生变化,其对应的数据检测规则也要相应修改,数据测试的成本大且适应性低。
技术实现思路
为克服相关技术中数据测试效率低的问题,本申请提供一种数据自动化测试方法及装置。根据本申请实施例的第一方面,提供一种数据自动化测试方法,包括:对被测数据集进行抽样,获得抽样数据集;判断所述抽样数据集中每列数据的类型;根据每列数据的类型查找每列数据对应的数据检测规则;运行查找到的数据检测规则,得到检测结果。可选的,所述判断抽样数据集中每列数据的类型,包括:在判断每列数据的通用类型之后,判断每列数据的领域特定类型,其中,所述通用类型包括:枚举、整数、浮点数和字符串,所述领域特定类型为列数据表征的物理类型,包括:名称、时间、地址、统一资源定位符。可选的,所述判断每列数据的通用类型,包括:当列的数据中有取值的数据占所述列所有数据的比例小于10%时,判断所述列的类型为枚举;当列的数据的取值全部为数字且存在小数点时,判断所述列的类型为浮点数;当列的数据的取值全部为数字且小数点的个数为零时,即当列的数据的取值全部为数字且不存在小数点时,判断所述列的类型为整数;当列的数据全部有取值且取值中存在数字之外的其他字符时,判断所述列的类型为字符串。可选的,所述判断每列数据的领域特定类型,包括:将列的数据的格式与各个领域特定类型格式对比;当列的数据中格式与领域特定类型格式其中之一相同的数据占所有列的数据的比例大于或等于95%时,判断列的类型为对应的格式相同的领域特定类型。可选的,所述根据每列数据的类型查找每列数据对应的数据检测规则,包括:判断是否存在自定义规则;当存在自定义规则时,在所述自定义规则中查找每列数据对应的数据检测规则,否则,在内置规则中查找每列数据对应的数据检测规则。可选的,所述的数据自动化测试方法,分布式运行查找到的数据检测规则。根据本申请实施例的第二方面,提供一种数据自动化测试装置,包括:抽样模块,用于对被测数据集进行抽样,并获得抽样数据集;类型判断模块,用于判断所述抽样数据集中每列数据的类型;规则映射模块,用于根据每列数据的类型查找每列数据对应的数据检测规则;规则运行模块,运行查找到的数据检测规则,得到检测结果。可选的,所述的数据自动化测试装置中,所述类型判断模块,包括:通用类型判断子模块,用于判断每列数据的通用类型;领域特定类型判断子模块,用于判断每列数据的领域特定类型,其中,所述通用类型包括:枚举、整数、浮点数和字符串,所述领域特定类型为列数据表征的物理类型,包括:名称、时间、地址、统一资源定位符。可选的,所述的数据自动化测试装置中,所述领域特定类型判断子模块,包括:格式对比子模块,用于将列的数据的格式与各个领域特定类型格式对比;记录子模块,用于记录列的数据中格式与领域特定类型格式其中之一相同的数据的个数;计算子模块,用于计算列的数据中格式与领域特定类型格式其中之一相同的数据的占所有列的数据的比例;判断子模块,用于当列的数据中格式与领域特定类型格式其中之一相同的数据占所有列的数据的比例大于或等于95%时,判断列的类型为对应的格式相同的领域特定类型。可选的,所述的数据自动化测试装置中,所述规则映射模块,包括:规则判断子模块,用于判断是否存在自定义规则;映射子模块,用于当存在自定义规则时,在所述自定义规则中查找每列数据对应的数据检测规则,否则,在内置规则中查找每列数据对应的数据检测规则。可选的,所述的数据自动化测试装置中,所述规则运行模块为分布式规则运行模块。本申请实施例提供的技术方案可以包括以下有益效果:对被测数据集进行抽样,获得代表被测数据特征的抽样数据集。获得抽样数据集后,判断其每列数据的类型,根据每列数据的类型查找对应的数据检测规则,运行所述规则得到异常数据,完成数据测试。由于以抽样数据集替代被测数据集进行测试,降低了数据测试量和规则编制量,提高了测试效率。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。【附图说明】为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本申请一示例性实施例示出的一种数据自动化测试方法的流程示意图。图2为本申请一示例性实施例示出的一种数据自动化测试装置的框图。图3为图2所示装置中类型判断模块的框图。图4为图3所示装置中领域特定类型判断子模块的框图。图5为图2所示装置中规则映射模块的框图。【具体实施方式】这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。为了全面理解本申请,在以下详细描述中提到了众多具体的细节,但是本领域技术人员应该理解,本申请可以无需这些具体细节而实现。在其他实施例中,不详细描述公知的方法、过程、组件和电路,以免不必要地导致实施例模糊。图1为本申请一示例性实施例示出的一种数据自动化测试方法的流程示意图。如图1所示,所述方法包括:当前第1页1 2 3 本文档来自技高网...
【技术保护点】
一种数据自动化测试方法,其特征在于,包括:对被测数据集进行抽样,获得抽样数据集;判断所述抽样数据集中每列数据的类型;根据每列数据的类型查找每列数据对应的数据检测规则;运行查找到的数据检测规则,得到检测结果。
【技术特征摘要】
【专利技术属性】
技术研发人员:刘晶,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛;KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。