一种实现生成测试案例数据的系统及方法技术方案

技术编号:9490058 阅读:142 留言:0更新日期:2013-12-25 23:52
本发明专利技术涉及一种实现生成测试案例数据的系统及方法,其中,系统包括:本地数据库,用于保存相关的参数表;数据筛选预处理单元,用于从所述本地数据库读取文件名称表,根据所述文件名称表读取数据关联表得到使用字段;并对所述使用字段的字典的参数进行合法性检查,筛选出需要参与数据排列组合的字段;数据生成单元,用于利用所述数据筛选预处理单元筛选出的需要参与数据排列组合的字段生成测试案例所需要的数据,并将生成的数据记录到数据库临时数据表中;数据输出单元,用于根据用户需求,将所述数据库临时数据表中记录的数据输出。

【技术实现步骤摘要】
一种实现生成测试案例数据的系统及方法
本专利技术涉及数据处理领域,特别涉及一种实现生成测试案例数据的系统及方法。
技术介绍
测试中常需要准备相应的各种数据,而这些数据在不同功能模块或不同系统之中并不相同,并且往往需要手工来准备。如果系统功能简单,准备的数据也相对简单,但实际上业务的复杂性使得系统的处理也变得复杂,比如:个人贷款业务、系统抽取业务的核算要素、组成产品组件等等,要验证这些组件是否符合要求,需要准备大量的不同情况的数据,如有15个组件,每个组件有2到10种可能,那么组合起来的情况可能达2的15次方到10的15次方的数据量,在测试的时候,就需要抽取相应的数据进行测试。目前常用的做法是采用直接由程序根据相关的逻辑条件生成,这种方法解决了人工编辑效率低下、容易出错的问题,但不能适应系统变化的情况,同一个功能模块或同一个系统,可能由于业务规则的变化,系统功能随之变化,数据可能需要重新准备,原来的程序就必须修改,并且这些数据只能应用于同一个系统,属于一次性使用,过后就可以抛弃。如果同时有多个项目在测试的时候,数据准备的工作量就大大增加,对项目进度也有较大影响。
技术实现思路
为解决上述问题,本专利技术提出一种实现生成测试案例数据的系统及方法,克服了现有测试数据准备工作中的不足,本申请提出的技术方案是一种实现简单,实施成本低,能够有效避免准备数据困难的生成测试案例数据的系统及方法。为实现上述目的,本专利技术提供了一种实现生成测试案例数据的系统,包括:本地数据库,用于保存相关的参数表;数据筛选预处理单元,用于从所述本地数据库读取文件名称表,根据所述文件名称表读取数据关联表得到使用字段;并对所述使用字段的字典的参数进行合法性检查,筛选出需要参与数据排列组合的字段;数据生成单元,用于利用所述数据筛选预处理单元筛选出的需要参与数据排列组合的字段生成测试案例所需要的数据,并将生成的数据记录到数据库临时数据表中;数据输出单元,用于根据用户需求,将所述数据库临时数据表中记录的数据输出。可选的,在本专利技术一实施例中,所述数据筛选预处理单元包括使用字段模块和筛选模块;所述使用字段模块,用于从所述本地数据库读取文件名称表,根据所述文件名称表读取数据关联表得到使用字段;所述筛选模块,用于判断所述使用字段第一位的值是否为1;若是,则所述使用字段为参与数据排列组合的字段。可选的,在本专利技术一实施例中,所述数据筛选预处理单元还包括数据量模块;所述数据量模块,用于根据所述筛选模块筛选出的参与数据排列组合的字段后15位、字段ID查询数据字典表,确定所述字段的字典项,获取所述筛选模块筛选出的参与数据排列组合的字段全排列组合达到的数据量。可选的,在本专利技术一实施例中,所述数据生成单元进一步用于根据所述数据筛选预处理单元中的数据量模块获取的数据量选择数据生成算法。可选的,在本专利技术一实施例中,所述数据生成单元包括SQL筛选方式数据生成模块、分组方式数据生成模块和等价类划分方式数据生成模块;根据选择,从所述SQL筛选方式数据生成模块、所述分组方式数据生成模块和所述等价类划分方式数据生成模块中任选一种模块生成数据;其中,所述SQL筛选方式数据生成模块,用于对所述数据筛选预处理单元筛选出的需要参与数据排列组合的字段通过全排列组合方式生成全部可能组合的数据,保存到数据库临时数据表中;根据需要参与数据排列组合的字段的逻辑关系转化成SQL语句,利用SQL语句对数据进行筛选获取无效数据,并在数据库临时数据表中将所述无效数据记录状态置为无效;所述分组方式数据生成模块,用于根据相对应的逻辑条件对所述数据筛选预处理单元筛选出的需要参与数据排列组合的字段进行迭代判断得到有效分组;对有效分组进行全排列组合的方式生成有效数据,保存到数据库临时数据表中;所述等价类划分方式数据生成模块,用于从所述数据筛选预处理单元筛选出的需要参与数据排列组合的字段的数据字典中循环取值,对取得的每个字典值记录到数据库临时数据表中,直至所述字段的数据字典均取过至少一次。为实现上述目的,本专利技术还提供了一种实现生成测试案例数据的方法,包括:本地数据库保存相关的参数表;从所述本地数据库读取文件名称表,根据所述文件名称表读取数据关联表得到使用字段;并对所述使用字段的字典的参数进行合法性检查,筛选出需要参与数据排列组合的字段;利用所述筛选出的需要参与数据排列组合的字段生成测试案例所需要的数据,并将生成的数据记录到数据库临时数据表中;根据用户需求,将所述数据库临时数据表中记录的数据输出。可选的,在本专利技术一实施例中,所述筛选出需要参与数据排列组合的字段的步骤包括:从本地数据库读取文件名称表,根据所述文件名称表读取数据关联表得到使用字段;判断所述使用字段第一位的值是否为1;若是,则所述使用字段为参与数据排列组合的字段。可选的,在本专利技术一实施例中,所述筛选出需要参与数据排列组合的字段的步骤还包括:根据所述筛选出的参与数据排列组合的字段后15位、字段ID查询数据字典表,确定所述字段的字典项,获取所述筛选出的参与数据排列组合的字段全排列组合达到的数据量。可选的,在本专利技术一实施例中,所述生成所需要的数据的步骤具体包括:根据所述筛选出的参与数据排列组合的字段全排列组合达到的数据量选择数据生成算法。可选的,在本专利技术一实施例中,所述数据生成算法包括SQL筛选方式数据生成算法、分组方式数据生成算法和等价类划分方式数据生成模块;根据选择,从所述SQL筛选方式数据生成算法、所述分组方式数据生成算法和所述等价类划分方式数据生成算法中任选一种算法生成数据;其中,所述SQL筛选方式数据生成算法,对所述筛选出的需要参与数据排列组合的字段通过全排列组合方式生成全部可能组合的数据,保存到数据库临时数据表中;根据需要参与数据排列组合的字段的逻辑关系转化成SQL语句,利用SQL语句对数据进行筛选获取无效数据,并在数据库临时数据表中将所述无效数据记录状态置为无效;所述分组方式数据生成算法,根据相对应的逻辑条件对所述筛选出的需要参与数据排列组合的字段进行迭代判断得到有效分组;对有效分组进行全排列组合的方式生成有效数据,保存到数据库临时数据表中;所述等价类划分方式数据生成算法,用于从所述筛选出的需要参与数据排列组合的字段的数据字典中循环取值,对取得的每个字典值记录到数据库临时数据表中,直至所述字段的数据字典均取过至少一次。上述技术方案具有如下有益效果:1)数据文件涉及的数据字段,其数据结构、数据字典采用共享方式,同一个字段在多个文件中出现的机率是很大的,因而可以实现一次配置后,多次使用,避免重复做繁琐的数据准备工作,提高了效率。2)对已生成的数据,直接生成为外部文件,方便保存和使用,避免数据库保留太多数据,而导致效率降低和维护成本增加。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术提出的一种实现生成测试案例数据的系统框图;图2为本专利技术提出的一种实现生成测试案例数据的系统中数据筛选预处理单元框图之一;图3为本专利技术提出的一种实现生成测本文档来自技高网...
一种实现生成测试案例数据的系统及方法

【技术保护点】
一种实现生成测试案例数据的系统,其特征在于,包括:本地数据库,用于保存相关的参数表;数据筛选预处理单元,用于从所述本地数据库读取文件名称表,根据所述文件名称表读取数据关联表得到使用字段;并对所述使用字段的字典的参数进行合法性检查,筛选出需要参与数据排列组合的字段;数据生成单元,用于利用所述数据筛选预处理单元筛选出的需要参与数据排列组合的字段生成测试案例所需要的数据,并将生成的数据记录到数据库临时数据表中;数据输出单元,用于根据用户需求,将所述数据库临时数据表中记录的数据输出。

【技术特征摘要】
1.一种实现生成测试案例数据的系统,其特征在于,包括:本地数据库,用于保存相关的参数表;数据筛选预处理单元,用于从所述本地数据库读取文件名称表,根据所述文件名称表读取数据关联表得到使用字段;并对所述使用字段的字典的参数进行合法性检查,筛选出需要参与数据排列组合的字段;数据生成单元,用于利用所述数据筛选预处理单元筛选出的需要参与数据排列组合的字段生成测试案例所需要的数据,并将生成的数据记录到数据库临时数据表中;数据输出单元,用于根据用户需求,将所述数据库临时数据表中记录的数据输出;其中,所述数据筛选预处理单元包括使用字段模块、筛选模块和数据量模块;所述使用字段模块,用于从所述本地数据库读取文件名称表,根据所述文件名称表读取数据关联表得到使用字段;所述筛选模块,用于判断所述使用字段第一位的值是否为1;若是,则所述使用字段为参与数据排列组合的字段;所述数据量模块,用于根据所述筛选模块筛选出的参与数据排列组合的字段后15位、字段ID查询数据字典表,确定所述字段的字典项,获取所述筛选模块筛选出的参与数据排列组合的字段全排列组合达到的数据量。2.如权利要求1所述的系统,其特征在于,所述数据生成单元进一步用于根据所述数据筛选预处理单元中的数据量模块获取的数据量选择数据生成算法。3.如权利要求2所述的系统,其特征在于,所述数据生成单元包括SQL筛选方式数据生成模块、分组方式数据生成模块和等价类划分方式数据生成模块;从所述SQL筛选方式数据生成模块、所述分组方式数据生成模块和所述等价类划分方式数据生成模块中任选一种模块生成数据;其中,所述SQL筛选方式数据生成模块,用于对所述数据筛选预处理单元筛选出的需要参与数据排列组合的字段通过全排列组合方式生成全部可能组合的数据,保存到数据库临时数据表中;把需要参与数据排列组合的字段的逻辑关系转化成SQL语句,利用SQL语句对数据进行筛选获取无效数据,并在数据库临时数据表中将所述无效数据记录状态置为无效;所述分组方式数据生成模块,用于根据相对应的逻辑条件对所述数据筛选预处理单元筛选出的需要参与数据排列组合的字段进行迭代判断得到有效分组;对有效分组进行全排列组合生成有效数据,保存到数据库临时数据表中;所述等价类划分方式数据生成模块,用于从所述数据筛选预处理单元筛选出的需要参与数据排列组...

【专利技术属性】
技术研发人员:刘春玲胡军全杨伯恩吕海文邹大卫舒广
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

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

1