一种测试数据生成方法及装置制造方法及图纸

技术编号:15724384 阅读:70 留言:0更新日期:2017-06-29 10:04
本申请公开了一种测试数据生成方法及装置,该方法包括:接收测试数据生成请求,所述测试数据生成请求携带业务系统标识和字段名称;根据所述业务系统标识,确定预定的、与所述业务系统标识对应的规则集合,所述规则集合中包含用于限定字段取值范围的规则;根据所述字段名称,在所述规则集合中确定与所述字段名称对应的规则;根据确定的所述规则,生成测试数据。通过本申请的方案,无需手工准备测试数据,而是可以基于规则集合自动地生成测试数据,效率较高,不仅如此,由于规则集合可以是根据测试场景预先确定的,进而基于该规则集合也可以生成足够覆盖测试场景的测试数据。

【技术实现步骤摘要】
一种测试数据生成方法及装置
本申请涉及测试
,尤其涉及一种测试数据生成方法及装置。
技术介绍
随着互联网和计算机技术的迅速发展,越来越多的业务可以通过互联网进行处理。不同的业务可以由不同的业务系统支撑,具体的,业务系统可以接收用户发送的、针对业务系统对应的业务的处理请求,并根据处理请求进行业务处理。目前,业务系统的提供方为了提高业务质量,经常要对业务系统进行测试,以便于根据测试结果对业务系统进行改进。在测试前或测试过程中,需要准备大量的测试数据,其中,测试数据可以包括在测试过程中会涉及的各字段的值。在现有技术中,一般采用手工方式准备测试数据,如手动指定上述各字段的值,但是,这种方式不仅效率低下,而且准备的测试数据对测试场景的覆盖面较小。
技术实现思路
本申请实施例提供一种测试数据生成方法及装置,用以解决现有技术中采用手工方式准备测试数据不仅效率低下,而且准备的测试数据对测试场景的覆盖面较小的问题。本申请实施例提供的一种测试数据生成方法,包括:接收测试数据生成请求,所述测试数据生成请求携带业务系统标识和字段名称;根据所述业务系统标识,确定预定的、与所述业务系统标识对应的规则集合,所述规则集合中包含用于限定字段取值范围的规则;根据所述字段名称,在所述规则集合中确定与所述字段名称对应的规则;根据确定的所述规则,生成测试数据。本申请实施例提供的一种测试数据生成装置,包括:接收模块,用于接收测试数据生成请求,所述测试数据生成请求携带业务系统标识和字段名称;规则集合确定模块,用于根据所述业务系统标识,确定预定的、与所述业务系统标识对应的规则集合,所述规则集合中包含用于限定字段取值范围的规则;规则确定模块,用于根据所述字段名称,在所述规则集合中确定与所述字段名称对应的规则;生成模块,用于根据确定的所述规则,生成测试数据。本申请实施例通过上述至少一种技术方案,无需手工准备测试数据,而是可以基于规则集合自动地生成测试数据,效率较高,不仅如此,由于规则集合可以是根据测试场景预先确定的,进而基于该规则集合也可以生成足够覆盖测试场景的测试数据。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1为本申请实施例提供的测试数据生成方法的过程;图2为本申请实施例提供的在实际应用场景下,一种具有层次的规则子集合示意图;图3为本申请实施例提供的在实际应用下,一种可以用于实施本申请的方案的系统的结构图;图4为本申请实施例提供的测试数据生成装置结构示意图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。为了解决
技术介绍
中提到的问题,在本申请实施例中,可以根据测试场景,预先指定在测试过程中会涉及的各字段的值应符合的规则,进而,可以由机器根据这些规则,自动地生成可用于该测试场景的测试数据。为了便于描述,可以用“组”这个单位描述测试数据。响应于测试数据生成请求,可以生成一组或多组测试数据,其中,每一组测试数据可以包含:为上述的各字段,分别对应生成的一个字段值。本申请实施例中对所述字段的数据类型并不做限定。例如,假定某次测试过程中会涉及3个字段,包括字段A、字段B、字段C,其中,字段A为数值变量,字段B为字符变量,字段B为字符串变量。则针对该次测试过程,生成的一组测试数据的一种示例可以是:{字段A=10,字段B=‘a’,字段C=“abc”}。下面基于以上说明,对本申请的方案进行具体说明。图1为本申请实施例提供的测试数据生成方法的过程,该过程的执行主体可以是一般的终端或服务器,也可以是专用于测试的终端或服务器。所述终端包括但不限于:个人计算机、手机、平板电脑、智能手表、车载移动台等;所述服务器包括但不限于:个人计算机、大中型计算机、计算机集群等。执行主体并不构成对本申请的限定。图1中的过程具体可以包括以下步骤:S101:接收测试数据生成请求,所述测试数据生成请求携带业务系统标识和字段名称。在本申请实施例中,测试数据生成请求可以由测试相关的任意设备或功能模块发送,如用于执行测试或管理测试数据的设备、用于获取测试数据的模块等。所述业务系统标识可以唯一标识业务系统,其可以是该业务系统的名称、代号,或是该业务系统内指定设备的设备标识等。所述字段名称可以是在测试过程中可能会涉及的字段的名称,如业务参数对应的字段、测试环境参数对应的字段等。测试数据生成请求中携带的字段名称可以有多个,在实际应用中,多个字段名称可以保存在字段列表中,则测试数据生成请求携带该字段列表即可。本申请实施例对字段名称的命名方式并不做限定。既支持普通的字符串命名方式,也支持诸如对象图导航语言(ObjectGraphNavigationLanguage,OGNL)等命名方式。例如,用普通的字符串命名方式命名的某字段名称为D,而用OGNL命名方式,可以将某对象a的字段D命名为:a.D。在本申请实施例中,上面提到的测试场景可以是不同的业务系统下的业务场景,也可以是同一个业务系统下不同的业务场景。测试场景可以是单个业务场景,在这种情况下,测试数据生成请求可以携带该业务场景所属的业务系统的业务系统标识和各字段名称。测试场景也可以是多个业务场景组成的复合场景,在这种情况下,测试数据生成请求可以携带该复合场景涉及的多个业务系统的业务系统标识,以及每个所述业务系统的各字段名称。S102:根据所述业务系统标识,确定预定的、与所述业务系统标识对应的规则集合,所述规则集合中包含用于限定字段取值范围的规则。对于业务系统的字段,不同的字段的取值范围可能不同,而且,某些字段的值的取值范围可能还会依赖于其他字段的值,这些取值范围一般是由业务系统的业务逻辑限定的。为了便于测试,还可以对业务逻辑限定的取值范围进一步地进行限定,以减小测试数据规模,提高测试效率。本申请实施例中所述的规则集合可以用于实现上述两类限定中的至少一种限定。在本申请实施例中,可以分别为不同的业务系统预先设定不同的规则集合。则为业务系统设定的规则集合可以是:与该业务系统的业务系统标识对应的规则集合。相应地,该规则集合中可以包含:用于限定该业务系统的部分字段或全部字段的取值范围的规则。进一步地,不同的业务系统可能会共用某些字段,因此,还可以针对至少两个业务系统,设定对应于所述至少两个业务系统的公共规则集合,该公共规则集合可以用于对所述至少两个业务系统共用的字段的取值范围进行限定。根据上面的说明,步骤S102中的“与所述业务系统标识对应的规则集合”可以包括仅针对该业务系统标识对应的业务系统设定的规则集合,以及针对包括至少两个业务系统设定的公共规则集合,所述至少两个业务系统包括该业务系统标识对应的业务系统。在本申请实施例中,对规则集合中包含的规则的表示形式并不做限定。在实际应用中,所述规则可以用规则表达式、常量、变量、语句等形式进行表示。S103:根据所述字段本文档来自技高网
...
一种测试数据生成方法及装置

【技术保护点】
一种测试数据生成方法,其特征在于,包括:接收测试数据生成请求,所述测试数据生成请求携带业务系统标识和字段名称;根据所述业务系统标识,确定预定的、与所述业务系统标识对应的规则集合,所述规则集合中包含用于限定字段取值范围的规则;根据所述字段名称,在所述规则集合中确定与所述字段名称对应的规则;根据确定的所述规则,生成测试数据。

【技术特征摘要】
1.一种测试数据生成方法,其特征在于,包括:接收测试数据生成请求,所述测试数据生成请求携带业务系统标识和字段名称;根据所述业务系统标识,确定预定的、与所述业务系统标识对应的规则集合,所述规则集合中包含用于限定字段取值范围的规则;根据所述字段名称,在所述规则集合中确定与所述字段名称对应的规则;根据确定的所述规则,生成测试数据。2.如权利要求1所述的方法,其特征在于,所述规则集合包含至少两个规则子集合;根据所述字段名称,在所述规则集合中确定与所述字段名称对应的规则,具体包括:在所述规则集合包含的各规则子集合中,确定所述测试数据生成请求指定的规则子集合;根据所述字段名称,在确定的规则子集合中,确定与所述字段名称对应的规则。3.如权利要求2所述的方法,其特征在于,所述规则集合包含的至少两个规则子集合具有层次关系,当确定在所述确定的规则子集合中,不存在与所述字段名称对应的规则时,所述方法还包括:根据所述字段名称和所述层次关系,在所述规则集合包含的其他规则子集合中,确定与所述字段名称对应的规则。4.如权利要求1所述的方法,其特征在于,当所述测试数据生成请求还携带自定义规则集合时,根据确定的所述规则,生成对应于所述字段名称的测试数据前,所述方法还包括:确定在所述自定义规则集合中,不存在与所述字段名称对应的规则。5.如权利要求1所述的方法,其特征在于,当所述测试数据生成请求还携带自定义规则集合时,所述方法还包括:当确定在所述自定义规则集合中,存在与所述字段名称对应的规则时,根据存在的所述规则,生成对应于所述字段名称的测试数据。6.如权利要求1所述的方法,其特征在于,所述规则包括为所述字段名称指定的规则表达式;根据确定的所述规则,生成测试数据,具体包括:根据所述规则表达式,生成符合所述规则表达式的、对应于所述字段名称的测试数据。7.一种测试数据生成装置,其特征在于,...

【专利技术属性】
技术研发人员:纪大松
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1