CN103870381A - 一种测试数据生成方法及装置 - Google Patents
一种测试数据生成方法及装置 Download PDFInfo
- Publication number
- CN103870381A CN103870381A CN201210527850.8A CN201210527850A CN103870381A CN 103870381 A CN103870381 A CN 103870381A CN 201210527850 A CN201210527850 A CN 201210527850A CN 103870381 A CN103870381 A CN 103870381A
- Authority
- CN
- China
- Prior art keywords
- data
- key field
- field
- numerical value
- value
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种测试数据生成方法及装置一种测试数据生成方法包括:获取测试对象的相关数据样本,分别确定每组数据样本的键字段;根据测试对象的数据转换流程,确定键字段中的核心键字段;对相关数据样本进行抽样,提取抽样结果中的键字段数值,如果是非核心键字段数值,则进一步转换为核心键字段数值,将得到的所有核心键字段数值添加到备选数值集合中;在输入数据样本中,查询与备选数值集合元素相匹配的数据,利用查询结果构成测试数据。上述方案充分考虑到了测试对象输入、输出及中间数据在整体上的相互关联,能够有效避免测试数据无法关联或者在测试过程中消失的问题。
Description
技术领域
本发明涉及测试技术领域,特别是涉及一种测试数据生成方法及装置。
背景技术
软件测试是软件生命周期的重要组成部分,确保了计算机软件的正确性和完整性。随着软件测试技术的发展,自动化测试技术已经被越来越广泛地使用。测试数据的准备,是软件测试中的一个重要环节,快速、全面地准备好测试数据,可以显著提高测试效率,缩短测试周期。
随着互联网的发展,软件需要处理信息量也不断增加,分布式软件逐渐成为主流;在分布式软件测试过程中,由于处理数据量较大,分布式集群统一运行,因此面临测试运行周期漫长、运行资源争抢等问题。其中,在准备测试数据的过程中,对测试样本进行抽样是解决上述问题的有效途径。
现有技术中,在对系统进行测试数据抽样时,主要采用对输入数据进行单文本抽样的方式,但是,如果系统存在多个输入端、并且多个输入数据之间存在关联时,分别对每个输入数据进行单文本抽样,其各自的抽样结果之间并不一定相互关联,那么这样的测试数据就失去了实际意义。另外,如果系统存在多个轮次的输入输出,由于系统各个模块的处理逻辑和限定,抽样得到的数据很可能在某个处理过程中消失,导致后面的处理模块无法得到充分测试。
发明内容
为解决上述技术问题,本发明实施例提供一种测试数据生成方法及装置,技术方案如下:
本发明实施例提供一种测试数据生成方法,该方法包括:
获取测试对象的相关数据样本,分别确定每组数据样本的键字段;所述相关数据包括:输入数据、输出数据以及中间数据;
根据测试对象的数据转换流程,确定键字段中的核心键字段;所述核心键字段为:字段数值无法转换为其他键字段数值的键字段;
对相关数据样本进行抽样,提取抽样结果中的键字段数值,如果是非核心键字段数值,则进一步转换为核心键字段数值,将得到的所有核心键字段数值添加到备选数值集合中;
在输入数据样本中,查询与备选数值集合元素相匹配的数据,利用查询结果构成测试数据。
根据本发明的一种具体实施方式,所述确定每组数据样本的键字段,包括:
识别数据样本每个字段的数值特征;
如果一组数据样本中仅出现一种键字段特征,则将该特征字段确定为该数据样本的键字段;
如果一组数据样本中出现多种键字段特征,则滤除特征重复出现的字段,将剩余的字段确定为该数据样本的键字段。
根据本发明的一种具体实施方式,所述识别数据样本每个字段的数值特征,包括:
根据预设的规则,识别数据样本每个字段的所涉及的数值类型;
针对固定列数的数据样本,如果某列所涉及的某种数值类型比例大于预设的第一阈值,则将该类型确定为该列字段的数值特征;如果该列没有大于第一阈值的数据类型,则将所有比例大于预设的第二阈值的数值类型确定为该列字段的数值特征;
针对非固定列数的数据样本,如果某列所涉及的某种数值类型比例大于预设的第三阈值,则将该类型确定为该列字段的数值特征;如果该列没有比例大于第三阈值的数据类型,则放弃对该列字段的数值特征识别。
根据本发明的一种具体实施方式,所述根据测试对象的数据转换流程,确定键字段中的核心键字段,包括:
根据测试对象的数据流方向,确定各个键字段之间的数值转换关系;
根据所确定的数值转换关系,将不存在转出关系的键字段,确定为核心键字段。
根据本发明的一种具体实施方式,所述对相关数据样本进行抽样,包括:
仅对包含键字段的数据样本进行抽样。
根据本发明的一种具体实施方式,所述对相关数据样本进行抽样,包括:
针对key-value格式的数据样本,根据value的取值区间进行分类抽样;
针对非key-value格式或value固定的数据样本,使用全随机的方式进行抽样;
其中,所述key-value格式为键值对格式。
根据本发明的一种具体实施方式,所述在输入数据样本中,查询与备选数值集合元素相匹配的数据,包括:
将输入数据样本中非核心键字段数值转换为核心键字段数值;
在原生核心键字段或转换后的核心键字段中,查询与备选数值集合元素相同的数值,进而将该数值所在的数据行作为查询结果输出。
本发明实施例还提供一种测试数据生成装置,该装置包括:
键字段确定模块,用于获取测试对象的相关数据样本,分别确定每组数据样本的键字段;所述相关数据包括:输入数据、输出数据以及中间数据;
核心键字段确定模块,用于根据测试对象的数据转换流程,确定键字段中的核心键字段;所述核心键字段为:字段数值无法转换为其他键字段数值的键字段;
数值收集模块,用于对相关数据样本进行抽样,提取抽样结果中的键字段数值,如果是非核心键字段数值,则进一步转换为核心键字段数值,将得到的所有核心键字段数值添加到备选数值集合中;
测试数据生成模块,用于在输入数据样本中,查询与备选数值集合元素相匹配的数据,利用查询结果构成测试数据。
根据本发明的一种具体实施方式,所述键字段确定模块,包括:
数值特征识别子模块,用于识别数据样本每个字段的数值特征;
键字段确定子模块,用于:如果一组数据样本中仅出现一种键字段特征,则将该特征字段确定为该数据样本的键字段;如果一组数据样本中出现多种键字段特征,则滤除特征重复出现的字段,将剩余的字段确定为该数据样本的键字段。
根据本发明的一种具体实施方式,所述数值特征识别子模块,具体用于:
根据预设的规则,识别数据样本每个字段的所涉及的数值类型;
针对固定列数的数据样本,如果某列所涉及的某种数值类型比例大于预设的第一阈值,则将该类型确定为该列字段的数值特征;如果该列没有大于第一阈值的数据类型,则将所有比例大于预设的第二阈值的数值类型确定为该列字段的数值特征;
针对非固定列数的数据样本,如果某列所涉及的某种数值类型比例大于预设的第三阈值,则将该类型确定为该列字段的数值特征;如果该列没有比例大于第三阈值的数据类型,则放弃对该列字段的数值特征识别。
根据本发明的一种具体实施方式,所述核心键字段确定模块,具体用于:
根据测试对象的数据流方向,确定各个键字段之间的数值转换关系;
根据所确定的数值转换关系,将不存在转出关系的键字段,确定为核心键字段。
根据本发明的一种具体实施方式,所述数值收集模块,具体用于:
仅对包含键字段的数据样本进行抽样。
根据本发明的一种具体实施方式,所述数值收集模块,具体用于:
针对key-value格式的数据样本,根据value的取值区间进行分类抽样;
针对非key-value格式或value固定的数据样本,使用全随机的方式进行抽样;
其中,所述key-value格式为键值对格式。
根据本发明的一种具体实施方式,所述测试数据生成模块,具体用于:
将输入数据样本中非核心键字段数值转换为核心键字段数值;
在原生核心键字段或转换后的核心键字段中,查询与备选数值集合元素相同的数值,进而将该数值所在的数据行作为查询结果输出。
应本发明实施例提供的技术方案,首先根据被测系统的整体输入输出架构,确定贯穿整个系统的核心键字段,根据该核心键字段分别在输入数据、输出数据以及中间数据样本中进行抽样,最后根据抽样结果在输入数据样本中进一步选择出测试数据。与现有的单文本抽样方案相比,上述方案充分考虑到了测试对象的输入、输出及中间数据在整体上的相互关联,能够有效避免测试数据无法关联或者在测试过程中消失的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例测试数据生成方法的一种流程图;
图2为本发明实施例被测系统数据转换关系示意图;
图3为本发明实施例被测系统键字段转换关系示意图;
图4为本发明实施例测试数据生成装置的一种结构示意图;
图5为本发明实施例测试数据生成装置键字段确定模块的一种结构示意图。
具体实施方式
对于一个被测系统而言,测试数据实际是用于输入的数据,在现有技术的实现方案中,通过对输入数据的样本进行抽样来自动构成测试数据。但是这种方式并没有考虑到多组数据之间的相关性,因此,在本发明的实施例中,首先对输入数据、输出数据和中间数据进行统一分析,然后根据分析结果对输入数据样本进行抽样来构成测试数据。
首先对本发明实施例所提供的一种测试数据生成方法进行说明,该方法可以包括以下步骤:
获取测试对象的相关数据样本,分别确定每组数据样本的键字段;所述相关数据包括:输入数据、输出数据以及中间数据;
根据测试对象的数据转换流程,确定键字段中的核心键字段;所述核心键字段为:字段数值无法转换为其他键字段数值的键字段;
对相关数据样本进行抽样,提取抽样结果中的键字段数值,如果是非核心键字段数值,则进一步转换为核心键字段数值,将得到的所有核心键字段数值添加到备选数值集合中;
在输入数据样本中,查询与备选数值集合元素相匹配的数据,利用查询结果构成测试数据。
上述测试数据生成方法,首先根据被测系统的整体输入输出架构,确定贯穿整个系统的核心键字段,根据该核心键字段分别在输入数据、输出数据以及中间数据样本中进行抽样,最后根据抽样结果在输入数据样本中进一步选择出测试数据。与现有的单文本抽样方案相比,上述方案充分考虑到了输入、输出及中间数据的在整体上的相互关联,能够有效避免测试数据无法关联或者在测试过程中消失的问题。
为了使本领域技术人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本发明保护的范围。
图1所示,为本发明实施例所一种测试数据生成方法的流程图,该方法可以包括以下步骤:
S101,获取测试对象的相关数据样本,分别确定每组数据样本的键字段;
对于一个待测系统而言,其需要涉及到的相关数据包括输入数据和输出数据,对于多轮次处理的系统,还会进一步包括中间数据。在本发明的实施例中,需要对输入数据、输出数据和中间数据进行统一分析,然后根据分析结果对输入数据样本进行抽样来构成测试数据。
按照一般的数据结构,都是以“行”为数据基本单元,一个数据单元也常称为“一行数据”或“一条数据”;以“列”来区分每个数据单元的不同字段。其中,在一组数据中,可能会存在一个或多个列,利用该列对应的数值,可以对每行数据进行区分,其相应的字段称为“键(key)字段”或“索引字段”,其他字段则用来描述key字段的各种属性。
对于每一组相关数据,最能够表征该组数据含义的是key字段,不同数据的key字段可能相同也可能不同,从被测系统的全局来看,key字段的变化可以在很大程度上代表着数据在处理过程中的特征变化,因此本发明从数据key字段的角度对输入/输出/中间数据进行统一分析。
首先需要确定每组输入/输出/中间数据的key字段,在有些情况下,key字段是直接在数据定义中指定的,这种情况下可以直接识别出key字段,如果没有可以直接识别的信息,则可以通过对数据各个字段的内容分析来识别出key字段。在本发明的一种实施方式中,提供一种根据数据样本字段内容识别key字段的方式:
步骤S101a:识别数据样本每个字段的数值特征;
一般来说,对于一个字段而言,其具体字段值都应该是相同类型,可以识别字段的类型。如果识别结果表明:数据样本某个字段的所有数值类型相同,那么可以直接确定这种类型就是该字段的数值特征。例如,如果识别出某个字段的所有数值都符合“时间”的格式,那么可以确定该字段数值特征为“time”。
有些情况下,一个字段中的数值可能涉及多种类型,具体原因可能是该字段本身属于混合类型字段,例如有些字段中既允许出现“string(字符串)”,又允许出现“num(数值)”;也可能是该字段允许存在一些特殊值,例如“null(空值)”等等。对于这种情况,可以根据字段类型的统计结果确定该字段的数值特征:
1)如果数据样本的列数固定,即每一行数据列数相同,则对于任一列,首先识别出每行的数值类型,例如识别结果包括type1、type2、type3……等等,然后判断:
是否存在一种type x(x=1、2、3……),该type x类型的数值在所有数值中所占比例大于T1,如果是,则将type x确定为该列字段的数值特征。
如果不存在满足上述条件的type x,则进一步判断是否存在一种或多种type y(y=1、2、3……),该type y类型的数值在所有数值中所占比例大于T2,如果是,则将所有满足条件的type y类型确定为该列字段的数值特征。
其中,T1、T2均为根据经验预设的阈值,从上述判断逻辑可以得知:T1>T2且T1>0.5。
举例说明,假设对于某固定数据样本的某列,识别出包括三种数值类型type1、type2、type3,T1=0.9,T2=0.1,那么对于以下两组数据:
type1比例0.95
type2比例0.02
type3比例0.03
可以确定该字段的数值特征为type1。
type1比例0.5
type2比例0.05
type3比例0.45
可以确定该字段的数值特征为type1+type2。
2)如果数据样本的列数不固定,则对于任一列,首先识别出每行的数值类型,例如识别结果包括type1、type2、type3……等等,然后判断:
是否存在一种type x(x=1、2、3……),该type x类型的数值在所有数值中所占比例大于T3,如果是,则将type x确定为该列字段的数值特征。
如果不存在满足上述条件的type x,则放弃对该列字段进行数值特征识别。
其中,T3为根据经验预设的阈值,从上述判断逻辑可以得知:T3>0.5。
上述方法中,分别针对列数固定和列数不固定的数据样本给出了字段数值识别方法,其中固定和非固定列数的区分主要是为了决定是否强定义列的类型,固定列数的数据样本其每一列含义一般是确定的、非固定列数的数据样本每一列的含义则是不确定的。
另外,根据具体的应用场景,有些数值类型的特征可能是重合的,这里需要进一步考虑两方面的问题:首先,由于最终目的是识别key字段,因此在识别字段数值特征,应优先匹配key字段特征,然后再匹配非key字段特征,在同一优先级别下,根据大数法则进行识别。
例如,对于形如“123.131.31.131”的数值,根据预设的规则,可以识别为IP类型,也可以识别为SITE(站点)类型,还可以识别为string(字符串类型)。已知对于被测系统,IP和SITE属于key字段,因此优先将字段数值识别为IP或SITE,然后根据IP和SITE类型的统计结果,以比例最高的类型作为进一步确定数值类型特征的依据。根据经验,在数据样本足够多的情况下,直接选取T1=0.9、T3=0.9进行判决,就可以较好地满足大数法则。当然,上述阈值的选取并不应理解为对本发明方案的限制。
步骤S101b:确定key字段;
对于功能确定的被测系统,所涉及的key字段也是已知的,也就是说,对于识别出来的多种数值类型,可以直接区分出哪些属于key字段的数值类型。
在步骤S101a中,对于任一组数据样本,可得到每个字段的数值特征识别结果,例如:
输入数据1:字段1(type2),字段2(type1),字段3(type2)
输入数据2:字段1(type2),字段2(type5),字段3(type3+type4)
中间数据:字段1(type1),字段2(type2),字段3(type5);……
如果在一组数据样本中,仅出现一种键字段特征,则可以直接将该特征字段确定为该数据样本的键字段;例如,已知type1和type2为key字段,则上述“输入数据2”的key字段识别结果为type2;
如果在一组数据样本中,出现多种键字段特征,则滤除特征重复出现的字段,将剩余的字段确定为该数据样本的键字段。这是因为,key字段具有唯一标识的特性,如果某个符合key特征的字段在一组数据中多次出现,那么这个字段只是起到描述其他key字段的作用,并不是真正的key字段。例如,已知type 1和type2为key字段,则上述“输入数据1”的key字段识别结果为type1(去除了重复的type2);“中间数据”的key字段识别结果为type1和type2两种。
S102,根据测试对象的数据转换流程,确定键字段中的核心键字段;
key字段可以用来表征一组数据的含义,在被测系统的数据处理过程中,数据的转换必然也会伴随着key字段的转换,有些key字段之间,会存在着某种确定的转换关系:利用这种转换关系,能够将一种字段的数值转换为另一种字段的数值,例如,一种将“URL”转换为“SITE”的规则如下:
SITE=substr(url,1,index(url,"/″)-1)
在本发明实施例中,对于确定的被测系统,如果一种key字段A的数值无法转换为其他key字段的数值,则定义key字段A为核心key字段。
在有些情况下,核心key字段是直接在数据定义中指定的,这种情况下可以直接识别出核心key字段,如果没有可供直接识别的信息,则可以根据被测系统的数据处理流程来分析出核心key字段。在本发明的一种实施方式中,根据数据处理流程识别核心key字段的方式:
S102a,根据测试对象的数据流方向,确定各个key字段之间的数值转换关系;具体而言,通过分析程序的源代码,可以提取出不同key字段之间的转换规则。
S102b,根据所确定的数值转换关系,将不存在转出关系的键字段,确定为核心键字段。
具体而言,可以以所有的key字段为节点,key字段之间的转换关系为边作图,得到一个关于“key字段”的有向图,然后,提取出该图中出度为0的节点,这些节点所对应的字段即为核心key字段。其中“出度为0”即对应于“不存在转出关系”,在一个被测系统中,可能存在多个核心key字段,这些字段的数值不会再转换为其他核心key字段的数值,而对于非核心key字段数值,必然可以通过某种方式最终转换为核心key字段的数值。
S103,对相关数据样本进行抽样,提取抽样结果中的键字段数值,如果是非核心键字段数值,则进一步转换为核心键字段数值,将得到的所有核心键字段数值添加到备选数值集合中;
根据本发明实施例,在准备测试数据的过程中,不是仅对输入数据样本进行抽样,而是对输入数据、输出数据、中间数据都进行抽样,进而根据数据间的关联关系,完成测试数据的准备。
首先,对于每个核心key字段,分别建立相应的核心key字段集合,这些集合中的元素后续将会用作生成测试数据的备选数值,因此也成为备选数值集合。
然后,对所有的输入/输出/中间数据分别进行抽样,并且提取出抽样结果中的key字段数值,此时可能出现两种情况:
如果是核心key字段数值,则直接将数值添加到相应的核心key字段集合中;
如果是非核心key字段数值,则根据key字段之间的转换关系,将是非核心key字段数值转换为相应的核心key字段数值,然后将转换后得到的数值添加到相应的核心key字段集合中。
在实际应用中,根据key字段的识别结果,有些数据本身可能是不存在key字段的,也就是说,这些数据和其他数据不存在关联性,在准备测试数据时不需要特别考虑,因此,在本发明的一种实施方式中,对于不包含key字段的数据不必进行抽样,也就是说,仅对那些包含键字段的数据样本进行抽样。
为了使测试更为充分,在本发明的一种优选实施方式中,对于不同格式的数据,可以采用不同的抽样方式进行处理。
例如,对于普通的key-value(键值对)格式的数据样本,可以采用分层抽样的方式,也就是说,可以将value(取值)范围划分为若干区间,然后均匀在每个区间内进行抽样,从而保证测试的覆盖面;而对于非key-value格式或value固定的数据样本,每条数据的对于测试的意义是相似的,所以可以采用全随机的方式进行抽样。
S104,在输入数据样本中,查询与备选数值集合元素相匹配的数据,利用查询结果构成测试数据。
由于所需要的测试数据是输入数据,所以最终仍然需要从输入数据样本中来选择,根据本发明实施例,在选择测试数据时,根据之前得到的备选数值,从输入数据样本中来选择用于测试的数据。
假设备选数值集合中含有元素A,则对于给定的输入数据样本,在数据样本中,查询相应的核心key字段取值为A的数据,将这些数据挑选出来作为测试数据。
由于备选数值集合是基于核心key字段建立,集合中的元素都是核心key字段元素,因此,如果输入数据样本中存在非核心key字段,需要先将非核心键key字段数值转换为核心key字段数值,然后进一步查询是否有与集合元素相同的数值。
另外,可以理解的是,如果被测系统存在多个核心key字段,则相应存在多个备选数值集合,在选择测试数据时,应该针对每个备选数值集合的元素在输入数据中进行查询;如果存在多组输入数据,则需要分别在每组输入数据中进行查询。
在上述方法中,首先确定贯穿整个系统的核心键字段,然后根据该核心键字段分别在输入数据、输出数据以及中间数据样本中进行抽样,最后根据抽样结果在输入数据样本中进一步选择出测试数据。也就是说,尽管是在不同的输入数据样本中分别选择测试数据,但是选择出的测试数据之间是基于“key字段”之间建立关联的,在系统的实际处理过程中,必然有数据之间能够存在关联关系,这些存在关联的数据能够对被测系统的处理逻辑进行全面有效的验证。
下面结合一个完整的应用实例,对上述测试数据生成方法进行说明。
当前的被测系统功能是完成ip抓取成功率的计算,参见图2所示,基本流程如下:
通过url(网络链接)抓取的日志记录(url_list),统计站点级别的抓取状态生成中间数据(site_list);
根据ip上的site列表(ip_site_list)以及中间数据(site_list),得出ip的抓取成功率(ip_list);
在上述系统中,存在的相关数据如下:
两组输入数据:url_list和ip_site_list;
一组中间数据:site_list;
一组输出数据:ip_list;
每组数据以文本文件的形式记录,记录数据格式示意如下:
url_list—网页url抓取状态列表:
NOTICE:11-2719:00:00:[CRAWL_LOG]CHK FAIL_NORMAL 500
19 386 0 382 0 4 0 0 288 0 www.forld.cn/?bd=Jp23_RgVX spider 47
ip_site_list—Ip对应站点列表
-unanswered.tumblr.com 66.6.32.146 2 0 1 0 1 3 24 D/private D/random
D/day
site_list—站点级别抓取状态列表:
www.forld.cn 15328157163
ip_list—Ip上的抓取成功比例:
66.6.32.1460.582317502
在上述数据格式示意中,每组数据仅给出一行数据的示意,根据现有的测试方法,由于输入文件巨大,需要对输入url_list,ip_site_list分别进行抽样,而分别抽样的结果,往往是最后没有产出;因为抽样的url和ip相互匹配的几率很小,即使存在数据匹配也很难满足测试数量级上的需求。而应用本发明的测试数据生成方法,可以有效解决该问题,结合前述的S101-S104,具体处理过程描述如下:
在S101,首先通过解析下列结构数据获取文本列表以及文本关系:
JOB_OUTPUT[0]=${HDFS_MOD_PATH}/site_list
JOB_INPUT[0]="${HDFS_DATA_PATH}/url_list/*/″
JOB_OUTPUT[1]=${HDFS_RECALL_PATH}/ip_list/
JOB_INPUT[1]="${HDFS_RECALL_IN_PATH}/ip_site_list/*/,${HDFS_MOD_PATH}/site_list"
获取文件列表如下:url_list,ip_site_list,site_list,ip_list,并且能够得到如图3所示的数据转换流程关系。
然后分别对每个文件的每个字段类型进行识别:针对本例的被测系统,url、site、ip属于key字段类型,这些特殊字段类型可以按照如下正则表达式进行识别:
url:/^[^[:space:]]+∨[^[:space:]]+$/)
site:/^[^[:space:]]+$/
ip:/([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)\.([[:digit:]]+)$/
其他的字段类型time,num,string等的识别为属于基础识别,这里不再详细描述。
识别结果如下:
url_list为固定列格式,各列类型如下:
NOTICE:time time[CRAWL_LOG]string string num num num numnum num num num num num num url spider num
其中url为key字段;
site_list为固定列格式,各列类型如下:
site num num
其中site为key字段;
ip_list为固定列格式,各列类型如下:
ip float
其中ip为key字段;
ip_site_list为非固定格式,各列类型如下:
site ip num num num num num num num null
其中ip和site为key字段;
在S102,从识别出的三种key字段(url、ip和site)中进一步识别出核心key字段。通过分析程序代码,可以找到url到site存在转换关系如下:
URL→SITE site=substr(url,1,index(url,"/")-1)
进而可以做出如图3所示key字段转换关系图,由于ip和site的节点的出度为0,因此可以确定ip和site为核心key字段,url为非核心key字段,其数值可以通过上述关系转换为key字段site的数值。
在S103,分别对url_list,ip_site_list,site_list,ip_list四组数据进行抽样。其中url_list和ip_site_list为非key-value格式,采用全随机抽样方式;site_list和ip_list为key-value格式,采用分层抽样方式。抽样结果示意如下(仅示出所关注的key字段数值,其他字段省略):
url_list: www.forld.cn/?bd=Jp23_RgVX(url字段数值)
site_list: www.baidu.com(site字段数值)
ip_list: 123.232.11.154(ip字段数值)
ip_site_list:-unanswered.tumblr.com(site字段数值)
66.6.32.146(ip字段数值)
其中site和ip为核心key字段,分别建立site集合和ip集合。其中url_list和site_list对应site集合,ip_list对应ip集合,ip_site_list对应ip集合和site集合。
“www.forld.cn/?bd=Jp23_RgVX”为非核心key字段(url)数值,根据规则转换为核心key字段(site)数值为:www.forld.cn。
添加到site集合的元素包括:
{www.forld.cn,www.baidu.com,-unanswered.tumblr.com}
添加到ip集合的元素包括:
{123.232.11.154,66.6.32.146}
在S104,分别从两组输入数据url_list和ip_site_list中选择数据。
其中在url_list的选择依据是:url字段值转换为site数值后,取值等于某个site集合元素的数据。
在ip_site_list的选择依据是:ip字段取值等于ip集合元素的数据,或者site字段取值等于site集合元素的数据。
根据上述方法分别从url_list和ip_site_list中分别选择的测试数据,必然存在很多url和ip能够相互匹配的数据,这些相互匹配数据能够在整个系统处理的全程进行流转,从而保证对系统的处理逻辑进行全面有效的验证。
相应于上面的方法实施例,本发明还提供一种测试数据生成装置,参见图4所示,该装置包括:键字段确定模块110、核心键字段确定模块120、数值收集模块130和测试数据生成模块140。
键字段确定模块110,用于获取测试对象的相关数据样本,分别确定每组数据样本的键字段;所述相关数据包括:输入数据、输出数据以及中间数据;
对于一个待测系统而言,其需要涉及到的相关数据包括输入数据和输出数据,对于多轮次处理的系统,还会进一步包括中间数据。在本发明的实施例中,需要对输入数据、输出数据和中间数据进行统一分析,然后根据分析结果对输入数据样本进行抽样来构成测试数据。
按照一般的数据结构,都是以“行”为数据基本单元,一个数据单元也常称为“一行数据”或“一条数据”;以“列”来区分每个数据单元的不同字段。其中,在一组数据中,可能会存在一个或多个列,利用该列对应的数值,可以对每行数据进行区分,其相应的字段称为“键(key)字段”或“索引字段”,其他字段则用来描述key字段的各种属性。
对于每一组相关数据,最能够表征该组数据含义的是key字段,不同数据的key字段可能相同也可能不同,从被测系统的全局来看,key字段的变化可以在很大程度上代表着数据在处理过程中的特征变化,因此本发明从数据key字段的角度对输入/输出/中间数据进行统一分析。
首先需要确定每组输入/输出/中间数据的key字段,在有些情况下,key字段是直接在数据定义中指定的,这种情况下可以直接识别出key字段,如果没有可以直接识别的信息,则可以通过对数据各个字段的内容分析来识别出key字段。在本发明的一种实施方式中,提供一种根据数据样本字段内容识别key字段的方式,参见图5所示,键字段确定模块110可以进一步包括:数值特征识别子模块121和键字段确定子模块122。
数值特征识别子模块121用于识别数据样本每个字段的数值特征;
一般来说,对于一个字段而言,其具体字段值都应该是相同类型,可以识别字段的类型。如果识别结果表明:数据样本某个字段的所有数值类型相同,那么可以直接确定这种类型就是该字段的数值特征。例如,如果识别出某个字段的所有数值都符合“时间”的格式,那么可以确定该字段数值特征为“time”。
有些情况下,一个字段中的数值可能涉及多种类型,具体原因可能是该字段本身属于混合类型字段,例如有些字段中既允许出现“string(字符串)”,又允许出现“num(数值)”;也可能是该字段允许存在一些特殊值,例如“null(空值)”等等。对于这种情况,可以根据字段类型的统计结果确定该字段的数值特征:
1)如果数据样本的列数固定,即每一行数据列数相同,则对于任一列,首先识别出每行的数值类型,例如识别结果包括type1、type2、type3……等等,然后判断:
是否存在一种type x(x=1、2、3……),该type x类型的数值在所有数值中所占比例大于T1,如果是,则将type x确定为该列字段的数值特征。
如果不存在满足上述条件的type x,则进一步判断是否存在一种或多种type y(y=1、2、3……),该type y类型的数值在所有数值中所占比例大于T2,如果是,则将所有满足条件的type y类型确定为该列字段的数值特征。
其中,T1、T2均为根据经验预设的阈值,从上述判断逻辑可以得知:T1>T2且T1>0.5。
2)如果数据样本的列数不固定,则对于任一列,首先识别出每行的数值类型,例如识别结果包括type1、type2、type3……等等,然后判断:
是否存在一种type x(x=1、2、3……),该type x类型的数值在所有数值中所占比例大于T3,如果是,则将type x确定为该列字段的数值特征。
如果不存在满足上述条件的type x,则放弃对该列字段进行数值特征识别。
其中,T3为根据经验预设的阈值,从上述判断逻辑可以得知:T3>0.5。
上述方案中,分别针对列数固定和列数不固定的数据样本给出了字段数值识别方法,其中固定和非固定列数的区分主要是为了决定是否强定义列的类型,固定列数的数据样本其每一列含义一般是确定的、非固定列数的数据样本每一列的含义则是不确定的。
另外,根据具体的应用场景,有些数值类型的特征可能是重合的,这里需要进一步考虑两方面的问题:首先,由于最终目的是识别key字段,因此在识别字段数值特征,应优先匹配key字段特征,然后再匹配非key字段特征,在同一优先级别下,根据大数法则进行识别。
键字段确定子模块122:用于确定数据样本的键字段。
对于功能确定的被测系统,所涉及的key字段也是已知的,也就是说,对于识别出来的多种数值类型,可以直接区分出哪些属于key字段的数值类型。
如果在一组数据样本中,仅出现一种键字段特征,则可以直接将该特征字段确定为该数据样本的键字段;
如果在一组数据样本中,出现多种键字段特征,则滤除特征重复出现的字段,将剩余的字段确定为该数据样本的键字段。这是因为,key字段具有唯一标识的特性,如果某个符合key特征的字段在一组数据中多次出现,那么这个字段只是起到描述其他key字段的作用,并不是真正的key字段。
核心键字段确定模块120,用于根据测试对象的数据转换流程,确定键字段中的核心键字段;
key字段可以用来表征一组数据的含义,在被测系统的数据处理过程中,数据的转换必然也会伴随着key字段的转换,有些key字段之间,会存在着某种确定的转换关系:利用这种转换关系,能够将一种字段的数值转换为另一种字段的数值,例如,一种将“URL”转换为“SITE”的规则如下:
SITE=substr(url,1,index(url,"/″)-1)
在本发明实施例中,对于确定的被测系统,如果一种key字段A的数值无法转换为其他key字段的数值,则定义key字段A为核心key字段。
在有些情况下,核心key字段是直接在数据定义中指定的,这种情况下可以直接识别出核心key字段,如果没有可供直接识别的信息,则可以根据被测系统的数据处理流程来分析出核心key字段。在本发明的一种实施方式中,核心键字段确定模块120具体用于:
首先根据测试对象的数据流方向,确定各个key字段之间的数值转换关系;具体而言,通过分析程序的源代码,可以提取出不同key字段之间的转换规则。
进而根据所确定的数值转换关系,将不存在转出关系的键字段,确定为核心键字段。具体而言,可以以所有的key字段为节点,key字段之间的转换关系为边作图,得到一个关于“key字段”的有向图,然后,提取出该图中出度为0的节点,这些节点所对应的字段即为核心key字段。其中“出度为0”即对应于“不存在转出关系”,在一个被测系统中,可能存在多个核心key字段,这些字段的数值不会再转换为其他核心key字段的数值,而对于非核心key字段数值,必然可以通过某种方式最终转换为核心key字段的数值。
数值收集模块130,用于对相关数据样本进行抽样,提取抽样结果中的键字段数值,如果是非核心键字段数值,则进一步转换为核心键字段数值,将得到的所有核心键字段数值添加到备选数值集合中;
根据本发明实施例,在准备测试数据的过程中,不是仅对输入数据样本进行抽样,而是对输入数据、输出数据、中间数据都进行抽样,进而根据数据间的关联关系,完成测试数据的准备。
首先,对于每个核心key字段,分别建立相应的核心key字段集合,这些集合中的元素后续将会用作生成测试数据的备选数值,因此也成为备选数值集合。
然后,对所有的输入/输出/中间数据分别进行抽样,并且提取出抽样结果中的key字段数值,此时可能出现两种情况:
如果是核心key字段数值,则直接将数值添加到相应的核心key字段集合中;
如果是非核心key字段数值,则根据key字段之间的转换关系,将是非核心key字段数值转换为相应的核心key字段数值,然后将转换后得到的数值添加到相应的核心key字段集合中。
在实际应用中,根据key字段的识别结果,有些数据本身可能是不存在key字段的,也就是说,这些数据和其他数据不存在关联性,在准备测试数据时不需要特别考虑,因此,在本发明的一种实施方式中,对于不包含key字段的数据不必进行抽样,也就是说,仅对那些包含键字段的数据样本进行抽样。
为了使测试更为充分,在本发明的一种优选实施方式中,对于不同格式的数据,可以采用不同的抽样方式进行处理。
例如,对于普通的key-value(键值对)格式的数据样本,可以采用分层抽样的方式,也就是说,可以将value(取值)范围划分为若干区间,然后均匀在每个区间内进行抽样,从而保证测试的覆盖面;而对于非key-value格式或value固定的数据样本,每条数据的对于测试的意义是相似的,所以可以采用全随机的方式进行抽样。
测试数据生成模块140,用于在输入数据样本中,查询与备选数值集合元素相匹配的数据,利用查询结果构成测试数据。
由于所需要的测试数据是输入数据,所以最终仍然需要从输入数据样本中来选择,根据本发明实施例,在选择测试数据时,根据之前得到的备选数值,从输入数据样本中来选择用于测试的数据。
假设备选数值集合中含有元素A,则对于给定的输入数据样本,在数据样本中,查询相应的核心key字段取值为A的数据,将这些数据挑选出来作为测试数据。
由于备选数值集合是基于核心key字段建立,集合中的元素都是核心key字段元素,因此,如果输入数据样本中存在非核心key字段,需要先将非核心键key字段数值转换为核心key字段数值,然后进一步查询是否有与集合元素相同的数值。
另外,可以理解的是,如果被测系统存在多个核心key字段,则相应存在多个备选数值集合,在选择测试数据时,应该针对每个备选数值集合的元素在输入数据中进行查询;如果存在多组输入数据,则需要分别在每组输入数据中进行查询。
在上述方案中,首先确定贯穿整个系统的核心键字段,然后根据该核心键字段分别在输入数据、输出数据以及中间数据样本中进行抽样,最后根据抽样结果在输入数据样本中进一步选择出测试数据。也就是说,尽管是在不同的输入数据样本中分别选择测试数据,但是选择出的测试数据之间是基于“key字段”之间建立关联的,在系统的实际处理过程中,必然有数据之间能够存在关联关系,这些存在关联的数据能够对被测系统的处理逻辑进行全面有效的验证。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本发明时可以把各模块的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (14)
1.一种测试数据生成方法,其特征在于,该方法包括:
获取测试对象的相关数据样本,分别确定每组数据样本的键字段;所述相关数据包括:输入数据、输出数据以及中间数据;
根据测试对象的数据转换流程,确定键字段中的核心键字段;所述核心键字段为:字段数值无法转换为其他键字段数值的键字段;
对相关数据样本进行抽样,提取抽样结果中的键字段数值,如果是非核心键字段数值,则进一步转换为核心键字段数值,将得到的所有核心键字段数值添加到备选数值集合中;
在输入数据样本中,查询与备选数值集合元素相匹配的数据,利用查询结果构成测试数据。
2.根据权利要求1所述的方法,其特征在于,所述确定每组数据样本的键字段,包括:
识别数据样本每个字段的数值特征;
如果一组数据样本中仅出现一种键字段特征,则将该特征字段确定为该数据样本的键字段;
如果一组数据样本中出现多种键字段特征,则滤除特征重复出现的字段,将剩余的字段确定为该数据样本的键字段。
3.根据权利要求2所述的方法,其特征在于,所述识别数据样本每个字段的数值特征,包括:
根据预设的规则,识别数据样本每个字段的所涉及的数值类型;
针对固定列数的数据样本,如果某列所涉及的某种数值类型比例大于预设的第一阈值,则将该类型确定为该列字段的数值特征;如果该列没有大于第一阈值的数据类型,则将所有比例大于预设的第二阈值的数值类型确定为该列字段的数值特征;
针对非固定列数的数据样本,如果某列所涉及的某种数值类型比例大于预设的第三阈值,则将该类型确定为该列字段的数值特征;如果该列没有比例大于第三阈值的数据类型,则放弃对该列字段的数值特征识别。
4.根据权利要求1所述的方法,其特征在于,所述根据测试对象的数据转换流程,确定键字段中的核心键字段,包括:
根据测试对象的数据流方向,确定各个键字段之间的数值转换关系;
根据所确定的数值转换关系,将不存在转出关系的键字段,确定为核心键字段。
5.根据权利要求1所述的方法,其特征在于,所述对相关数据样本进行抽样,包括:
仅对包含键字段的数据样本进行抽样。
6.根据权利要求1所述的方法,其特征在于,所述对相关数据样本进行抽样,包括:
针对key-value格式的数据样本,根据value的取值区间进行分类抽样;
针对非key-value格式或value固定的数据样本,使用全随机的方式进行抽样;
其中,所述key-value格式为键值对格式。
7.根据权利要求1所述的方法,其特征在于,所述在输入数据样本中,查询与备选数值集合元素相匹配的数据,包括:
将输入数据样本中非核心键字段数值转换为核心键字段数值;
在原生核心键字段或转换后的核心键字段中,查询与备选数值集合元素相同的数值,进而将该数值所在的数据行作为查询结果输出。
8.一种测试数据生成装置,其特征在于,该装置包括:
键字段确定模块,用于获取测试对象的相关数据样本,分别确定每组数据样本的键字段;所述相关数据包括:输入数据、输出数据以及中间数据;
核心键字段确定模块,用于根据测试对象的数据转换流程,确定键字段中的核心键字段;所述核心键字段为:字段数值无法转换为其他键字段数值的键字段;
数值收集模块,用于对相关数据样本进行抽样,提取抽样结果中的键字段数值,如果是非核心键字段数值,则进一步转换为核心键字段数值,将得到的所有核心键字段数值添加到备选数值集合中;
测试数据生成模块,用于在输入数据样本中,查询与备选数值集合元素相匹配的数据,利用查询结果构成测试数据。
9.根据权利要求1所述8所述的装置,其特征在于,所述键字段确定模块,包括:
数值特征识别子模块,用于识别数据样本每个字段的数值特征;
键字段确定子模块,用于:如果一组数据样本中仅出现一种键字段特征,则将该特征字段确定为该数据样本的键字段;如果一组数据样本中出现多种键字段特征,则滤除特征重复出现的字段,将剩余的字段确定为该数据样本的键字段。
10.根据权利要求9所述的装置,其特征在于,所述数值特征识别子模块,具体用于:
根据预设的规则,识别数据样本每个字段的所涉及的数值类型;
针对固定列数的数据样本,如果某列所涉及的某种数值类型比例大于预设的第一阈值,则将该类型确定为该列字段的数值特征;如果该列没有大于第一阈值的数据类型,则将所有比例大于预设的第二阈值的数值类型确定为该列字段的数值特征;
针对非固定列数的数据样本,如果某列所涉及的某种数值类型比例大于预设的第三阈值,则将该类型确定为该列字段的数值特征;如果该列没有比例大于第三阈值的数据类型,则放弃对该列字段的数值特征识别。
11.根据权利要求8所述的装置,其特征在于,所述核心键字段确定模块,具体用于:
根据测试对象的数据流方向,确定各个键字段之间的数值转换关系;
根据所确定的数值转换关系,将不存在转出关系的键字段,确定为核心键字段。
12.根据权利要求8所述的装置,其特征在于,所述数值收集模块,具体用于:
仅对包含键字段的数据样本进行抽样。
13.根据权利要求8所述的装置,其特征在于,所述数值收集模块,具体用于:
针对key-value格式的数据样本,根据value的取值区间进行分类抽样;
针对非key-value格式或value固定的数据样本,使用全随机的方式进行抽样;
其中,所述key-value格式为键值对格式。
14.根据权利要求8所述的装置,其特征在于,所述测试数据生成模块,具体用于:
将输入数据样本中非核心键字段数值转换为核心键字段数值;
在原生核心键字段或转换后的核心键字段中,查询与备选数值集合元素相同的数值,进而将该数值所在的数据行作为查询结果输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210527850.8A CN103870381B (zh) | 2012-12-10 | 2012-12-10 | 一种测试数据生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210527850.8A CN103870381B (zh) | 2012-12-10 | 2012-12-10 | 一种测试数据生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103870381A true CN103870381A (zh) | 2014-06-18 |
CN103870381B CN103870381B (zh) | 2018-01-05 |
Family
ID=50908937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210527850.8A Active CN103870381B (zh) | 2012-12-10 | 2012-12-10 | 一种测试数据生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103870381B (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335407A (zh) * | 2014-07-29 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 一种数据自动化测试方法及装置 |
CN106611176A (zh) * | 2015-10-26 | 2017-05-03 | 北京国双科技有限公司 | 异常中文字符串的识别方法及装置 |
CN106682023A (zh) * | 2015-11-10 | 2017-05-17 | 杭州华为数字技术有限公司 | 生成数据集的方法和装置 |
CN106776901A (zh) * | 2016-11-30 | 2017-05-31 | 北京知道创宇信息技术有限公司 | 数据提取方法、装置及系统 |
CN107341109A (zh) * | 2017-07-07 | 2017-11-10 | 中国银行股份有限公司 | 一种测试数据的生成方法和系统 |
CN107577604A (zh) * | 2017-09-04 | 2018-01-12 | 北京京东尚科信息技术有限公司 | 测试数据的生成方法、装置和计算机可读存储介质 |
CN108132883A (zh) * | 2017-12-25 | 2018-06-08 | 信利光电股份有限公司 | 一种软件测试数据分析方法、装置、系统及存储介质 |
CN109101648A (zh) * | 2018-08-22 | 2018-12-28 | 歌尔科技有限公司 | 一种新闻播放方法和装置 |
CN110275703A (zh) * | 2019-06-27 | 2019-09-24 | 浙江大搜车软件技术有限公司 | 键值对数据的赋值方法、装置、计算机设备和存储介质 |
CN110516008A (zh) * | 2019-08-14 | 2019-11-29 | 北京海致星图科技有限公司 | 一种构造图平台测试数据的方法 |
CN111159040A (zh) * | 2019-12-31 | 2020-05-15 | 中国银行股份有限公司 | 一种测试数据生成方法、装置、设备及存储介质 |
CN111444094A (zh) * | 2020-03-25 | 2020-07-24 | 中国邮政储蓄银行股份有限公司 | 一种测试数据的生成方法和系统 |
CN112328499A (zh) * | 2020-11-27 | 2021-02-05 | 杭州安恒信息技术股份有限公司 | 一种测试数据生成方法、装置、设备及介质 |
CN112925836A (zh) * | 2019-12-06 | 2021-06-08 | 腾讯科技(深圳)有限公司 | 一种数据转换方法和设备 |
CN113742225A (zh) * | 2021-08-31 | 2021-12-03 | 上海浦东发展银行股份有限公司 | 一种测试数据生成方法、装置、设备及存储介质 |
CN113868141A (zh) * | 2021-09-29 | 2021-12-31 | 北京达佳互联信息技术有限公司 | 数据测试方法、装置、电子设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030033289A1 (en) * | 2001-05-24 | 2003-02-13 | Brinker Brian L. | Method and system for systematically diagnosing data problems in a database |
CN101187894A (zh) * | 2006-11-15 | 2008-05-28 | 中兴通讯股份有限公司 | 一种基于关键字驱动的自动测试方法及其测试系统 |
CN101430661A (zh) * | 2008-11-18 | 2009-05-13 | 阿里巴巴集团控股有限公司 | 一种批量生成测试数据的方法、系统和装置 |
-
2012
- 2012-12-10 CN CN201210527850.8A patent/CN103870381B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030033289A1 (en) * | 2001-05-24 | 2003-02-13 | Brinker Brian L. | Method and system for systematically diagnosing data problems in a database |
CN101187894A (zh) * | 2006-11-15 | 2008-05-28 | 中兴通讯股份有限公司 | 一种基于关键字驱动的自动测试方法及其测试系统 |
CN101430661A (zh) * | 2008-11-18 | 2009-05-13 | 阿里巴巴集团控股有限公司 | 一种批量生成测试数据的方法、系统和装置 |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105335407A (zh) * | 2014-07-29 | 2016-02-17 | 阿里巴巴集团控股有限公司 | 一种数据自动化测试方法及装置 |
CN106611176B (zh) * | 2015-10-26 | 2019-10-25 | 北京国双科技有限公司 | 异常中文字符串的识别方法及装置 |
CN106611176A (zh) * | 2015-10-26 | 2017-05-03 | 北京国双科技有限公司 | 异常中文字符串的识别方法及装置 |
CN106682023A (zh) * | 2015-11-10 | 2017-05-17 | 杭州华为数字技术有限公司 | 生成数据集的方法和装置 |
CN106776901A (zh) * | 2016-11-30 | 2017-05-31 | 北京知道创宇信息技术有限公司 | 数据提取方法、装置及系统 |
CN106776901B (zh) * | 2016-11-30 | 2019-12-06 | 北京知道创宇信息技术股份有限公司 | 数据提取方法、装置及系统 |
CN107341109A (zh) * | 2017-07-07 | 2017-11-10 | 中国银行股份有限公司 | 一种测试数据的生成方法和系统 |
CN107577604A (zh) * | 2017-09-04 | 2018-01-12 | 北京京东尚科信息技术有限公司 | 测试数据的生成方法、装置和计算机可读存储介质 |
CN108132883A (zh) * | 2017-12-25 | 2018-06-08 | 信利光电股份有限公司 | 一种软件测试数据分析方法、装置、系统及存储介质 |
CN109101648A (zh) * | 2018-08-22 | 2018-12-28 | 歌尔科技有限公司 | 一种新闻播放方法和装置 |
CN109101648B (zh) * | 2018-08-22 | 2022-04-05 | 歌尔科技有限公司 | 一种新闻播放方法和装置 |
CN110275703A (zh) * | 2019-06-27 | 2019-09-24 | 浙江大搜车软件技术有限公司 | 键值对数据的赋值方法、装置、计算机设备和存储介质 |
CN110275703B (zh) * | 2019-06-27 | 2023-06-06 | 浙江大搜车软件技术有限公司 | 键值对数据的赋值方法、装置、计算机设备和存储介质 |
CN110516008A (zh) * | 2019-08-14 | 2019-11-29 | 北京海致星图科技有限公司 | 一种构造图平台测试数据的方法 |
CN112925836A (zh) * | 2019-12-06 | 2021-06-08 | 腾讯科技(深圳)有限公司 | 一种数据转换方法和设备 |
CN112925836B (zh) * | 2019-12-06 | 2024-05-28 | 腾讯科技(深圳)有限公司 | 一种数据转换方法和设备 |
CN111159040A (zh) * | 2019-12-31 | 2020-05-15 | 中国银行股份有限公司 | 一种测试数据生成方法、装置、设备及存储介质 |
CN111444094A (zh) * | 2020-03-25 | 2020-07-24 | 中国邮政储蓄银行股份有限公司 | 一种测试数据的生成方法和系统 |
CN112328499A (zh) * | 2020-11-27 | 2021-02-05 | 杭州安恒信息技术股份有限公司 | 一种测试数据生成方法、装置、设备及介质 |
CN113742225A (zh) * | 2021-08-31 | 2021-12-03 | 上海浦东发展银行股份有限公司 | 一种测试数据生成方法、装置、设备及存储介质 |
CN113742225B (zh) * | 2021-08-31 | 2024-04-26 | 上海浦东发展银行股份有限公司 | 一种测试数据生成方法、装置、设备及存储介质 |
CN113868141A (zh) * | 2021-09-29 | 2021-12-31 | 北京达佳互联信息技术有限公司 | 数据测试方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN103870381B (zh) | 2018-01-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103870381A (zh) | 一种测试数据生成方法及装置 | |
Fu et al. | Spark–a big data processing platform for machine learning | |
CN104598376B (zh) | 一种数据驱动的分层自动化测试系统和方法 | |
US9356966B2 (en) | System and method to provide management of test data at various lifecycle stages | |
CN102135938B (zh) | 一种软件产品测试方法及系统 | |
Haddad et al. | The impact of intention of use on the success of big data adoption via organization readiness factor | |
CN104899016A (zh) | 调用堆栈关系获取方法及装置 | |
CN110134582A (zh) | 测试用例的处理及数据处理方法及装置 | |
CN108460068A (zh) | 报表导入导出的方法、装置、存储介质及终端 | |
Srikanth et al. | Machine Learning for Query Processing System and Query Response Time using Hadoop | |
Wang et al. | Empirical study of the effects of different profiles on regression test case reduction | |
Norta et al. | A cloud hub for brokering business processes as a service: A" rendezvous" platform that supports semi-automated background checked partner discovery for cross-enterprise collaboration | |
Välja et al. | Automated architecture modeling for enterprise technology manageme using principles from data fusion: A security analysis case | |
CN113220597B (zh) | 测试方法、测试装置、电子设备及存储介质 | |
CN117171711B (zh) | 一种基于云平台的企业内外部数据融合共享方法及系统 | |
CN107871055A (zh) | 一种数据分析方法和装置 | |
Yang et al. | A learning-to-rank algorithm for constructing defect prediction models | |
CN104462461A (zh) | 对表单进行排查空值处理的方法及装置 | |
CN109542890A (zh) | 数据修改方法、装置、计算机设备及存储介质 | |
Piest et al. | A Federated Interoperability Approach for Data Driven Logistic Support in SMEs. | |
Guo et al. | A review of bad smells in cloud-based applications and microservices | |
CN114490246A (zh) | 一种监控方法、装置、电子设备以及存储介质 | |
CN112765016A (zh) | 一种开源软件可用性判定方法及装置 | |
CN110995747A (zh) | 一种分布式存储安全性分析方法 | |
CN116383883B (zh) | 一种基于大数据的数据管理权限处理方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |