一种基于主机代码解析生成测试案例的方法及装置制造方法及图纸

技术编号:15391462 阅读:38 留言:0更新日期:2017-05-19 04:46
本发明专利技术提供了一种基于主机代码解析生成测试案例的方法及装置。所述方法包括:对主机程序代码进行解析,根据编码语言的关键字识别出各个功能模块;根据所述各个功能模块对资源的所有操作,生成所述各个功能模块的所有合成桩,并将所述合成桩插入到每个功能模块的程序中;执行程序,采集作业队列中的信息,并对采集到的信息进行过滤清洗,将符合所述程序对应的合成桩的信息按照合成桩分别整理,生成有效信息;对所述有效信息进行深度分析,将资源按照操作符的先后顺序生成资源有向网络图;将所述资源有向图通过遍历算法遍历出所有路径,生成所有以资源为线索的测试案例。本发明专利技术为现在庞大的大型机系统测试提供了以资源为线索的全量测试案例。

Method and device for generating test case based on host code analysis

The invention provides a method and a device for generating a test case based on host code analysis. The method includes: analyzing the host program code, based on keyword recognition encoding language function modules; each module according to the operation of all resources, generate the various functional modules of all synthetic pile, and the pile of synthetic inserted into each functional module of the program in the program execution; collect the information in the job queue, and then filter the cleaning of the collected information, the synthesis of pile information conforms to the corresponding procedure according to the composite pile respectively, generate effective information; depth analysis of the effective information resources in accordance with the order of the operator will generate resources to the network; the resource directed graph traversal traversal algorithm through all paths to generate all the resources for clues to the test case. The present invention provides a full amount test case with the resource as the clue for the present large-scale mainframe computer system test.

【技术实现步骤摘要】
一种基于主机代码解析生成测试案例的方法及装置
本专利技术涉及软件测试领域,尤其涉及大型机系统的系统测试领域,具体的讲是一种基于主机代码解析生成测试案例的方法及装置。
技术介绍
本部分旨在为权利要求书中陈述的本专利技术的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。大型机系统,都是以程序为单位,依赖一组或多组程序共同完成所需功能的整个系统。大型机中的程序一般是通过作业调度方式启动调度,用以处理响应时间不要求太高,但处理数据量较大等作业,例如,报表、账务等大运算量在大型机中有广泛应用。在黑盒测试大型机系统时,由于测试具有流程长并且数据准备、验证复杂及其对测试人员具有较强的隐蔽性等特点,目前都是采用完全凭测试人员经验验证各种案例场景,依赖测试人员长期的经验进行测试。但由于大型机系统随着业务需求日新月异,主机产品及其应用也会日行千里,很多问题都不能依靠原有测试人员丰富的经验可以验证并发现相应问题,程序测试的全面性和完整性也越来越难以保证。举例来说,程序一般针对交易所产生的业务数据,在日终时通过作业调度处理资源时使用的程序。一般程序的处理流程大概为读取相关参数表及需要处理的业务数据,进行账务处理、业务报表生成等处理,并生成数据表或者资源文件等功能。如一个普通的业务量统计报表源文件生成程序实现了10个程序分支,首先读取两张参数表,两种业务文件的数据,通过逻辑处理,写到三种业务汇总文件,然后再读取三张参数表,并且参数表中的信息将三个汇总文件,分别启动其他的接口进行处理,并且写到成功和失败的处理文件。在黑盒测试过程中,由于程序相对业务测试人员具有隐蔽性,在测试过程中准备的数据可能只通过最后的一张报表或一个最终的数据很难实现测试场景完全覆盖。所以,如何通过工具及方法,准确有效指导测试过程中所有业务场景,使没有得到充分验证的系统处理逻辑可以通过工具生成的测试案例设计新的测试案例场景,实现全方位验证,以提高系统的可靠性及测试的完整性,是主机系统黑盒测试过程中一个高度关注并亟待解决的问题。
技术实现思路
本专利技术实施例提供一种基于主机代码解析生成测试案例的方法及装置,为现在庞大的大型机系统测试提供以资源为线索的全量测试案例。为了达到上述目的,本专利技术实施例提供一种基于主机代码解析生成测试案例的方法,包括:对主机程序代码进行解析,根据编码语言的关键字识别出各个功能模块;根据所述各个功能模块对资源的所有操作,生成所述各个功能模块的所有合成桩,并将所述合成桩插入到每个功能模块的程序中;执行程序,采集作业队列中的信息,并对采集到的信息进行过滤清洗,将符合所述程序对应的合成桩的信息按照合成桩分别整理,生成有效信息;对所述有效信息进行深度分析,将资源按照操作符的先后顺序生成资源有向网络图;将所述资源有向图通过遍历算法遍历出所有路径,生成所有以资源为线索的测试案例。进一步地,在一实施例中,所述对主机程序代码进行解析,根据编码语言的关键字识别出各个功能模块,还包括:根据存储在代码分析数据库中的操作符关键字、资源关键字,识别出所述每个功能模块对资源所采用的所有操作。进一步地,在一实施例中,所述根据所述各个功能模块对资源的所有操作,生成所述各个功能模块的所有合成桩,并将所述合成桩插入到每个功能模块的程序中,具体包括:根据所述各个功能模块对资源所采用的所有操作,结合存储在代码分析数据库中的操作符关键字、资源关键字,生成所有“操作-类型-资源”的合成桩,并在每个功能模块的程序末插入所述合成桩。进一步地,在一实施例中,所述对所述有效信息进行深度分析,将资源按照操作符的先后顺序生成资源有向网络图,具体包括:通过对所述有效信息进行解析,搜索过滤数据中指定的分割符号、关键字,将主机资源名和对资源的操作分离出来,形成程序、主机资源及对资源的操作关系,并根据操作符先后顺序,形成程序对资源的操作顺序,生成所述资源有向网络图。进一步地,在一实施例中,所述将所述资源有向图通过遍历算法遍历出所有路径,生成所有以资源为线索的测试案例,具体包括:通过对所述资源有向网络图分析,以资源为线索,找到与之相关的全部前后项,搜寻所需的表、文件、程序,通过所述遍历算法,配合资源在程序中的别名,并根据资源和别名的一一对应关系,形成针对主机系统的所有测试案例。为了达到上述目的,本专利技术实施例还提供一种基于主机代码解析生成测试案例的装置,包括:代码解析模块,用于对主机程序代码进行解析,根据编码语言的关键字识别出各个功能模块;合成桩插入模块,用于根据所述各个功能模块对资源的所有操作,生成所述各个功能模块的所有合成桩,并将所述合成桩插入到每个功能模块的程序中;采集过滤模块,用于在执行程序时采集作业队列中的信息,并对采集到的信息进行过滤清洗,将符合所述程序对应的合成桩的信息按照合成桩分别整理,生成有效信息;资源有向网络图生成模块,用于对所述有效信息进行深度分析,将资源按照操作符的先后顺序生成资源有向网络图;测试案例生成模块,用于将所述资源有向图通过遍历算法遍历出所有路径,生成所有以资源为线索的测试案例。进一步地,在一实施例中,所述代码解析模块用于所述对主机程序代码进行解析,根据编码语言的关键字识别出各个功能模块,其还包括:根据存储在代码分析数据库中的操作符关键字、资源关键字,识别出所述每个功能模块对资源所采用的所有操作。进一步地,在一实施例中,所述合成桩插入模块用于根据所述各个功能模块对资源的所有操作,生成所述各个功能模块的所有合成桩,并将所述合成桩插入到每个功能模块的程序中,其具体包括:根据所述各个功能模块对资源所采用的所有操作,结合存储在代码分析数据库中的操作符关键字、资源关键字,生成所有“操作-类型-资源”的合成桩,并在每个功能模块的程序末插入所述合成桩。进一步地,在一实施例中,所述资源有向网络图生成模块用于对所述有效信息进行深度分析,将资源按照操作符的先后顺序生成资源有向网络图,其具体包括:通过对所述有效信息进行解析,搜索过滤数据中指定的分割符号、关键字,将主机资源名和对资源的操作分离出来,形成程序、主机资源及对资源的操作关系,并根据操作符先后顺序,形成程序对资源的操作顺序,生成所述资源有向网络图。进一步地,在一实施例中,所述测试案例生成模块用于将所述资源有向图通过遍历算法遍历出所有路径,生成所有以资源为线索的测试案例,其具体包括:通过对所述资源有向网络图分析,以资源为线索,找到与之相关的全部前后项,搜寻所需的表、文件、程序,通过所述遍历算法,配合资源在程序中的别名,并根据资源和别名的一一对应关系,形成针对主机系统的所有测试案例。本专利技术实施例的这种基于主机代码解析生成测试案例的装置及方法,首先通过对主机代码分析,将合成桩插入到代码中,并通过整理合成通过对信息数据的清洗过滤及数据分析,并对数据进一步解析,依据主机资源操作的前后关系生成资源有向图,并通过对资源有向图的解析,最终得到以资源为线索的全部测试案例。本专利技术的这种方法为现在庞大的大型机系统测试提供了以资源为线索的全量测试案例,使系统在测试时实现系统内所有逻辑分支处理测试成为可能,也为全面大型机系统全流程业务场景测试提供可靠依据。与原有的手工统计方式相比,本专利技术提供了测试案例全自动生成方案,极大减轻了测试人员在黑本文档来自技高网
...
一种基于主机代码解析生成测试案例的方法及装置

【技术保护点】
一种基于主机代码解析生成测试案例的方法,其特征在于,包括:对主机程序代码进行解析,根据编码语言的关键字识别出各个功能模块;根据所述各个功能模块对资源的所有操作,生成所述各个功能模块的所有合成桩,并将所述合成桩插入到每个功能模块的程序中;执行程序,采集作业队列中的信息,并对采集到的信息进行过滤清洗,将符合所述程序对应的合成桩的信息按照合成桩分别整理,生成有效信息;对所述有效信息进行深度分析,将资源按照操作符的先后顺序生成资源有向网络图;将所述资源有向图通过遍历算法遍历出所有路径,生成所有以资源为线索的测试案例。

【技术特征摘要】
1.一种基于主机代码解析生成测试案例的方法,其特征在于,包括:对主机程序代码进行解析,根据编码语言的关键字识别出各个功能模块;根据所述各个功能模块对资源的所有操作,生成所述各个功能模块的所有合成桩,并将所述合成桩插入到每个功能模块的程序中;执行程序,采集作业队列中的信息,并对采集到的信息进行过滤清洗,将符合所述程序对应的合成桩的信息按照合成桩分别整理,生成有效信息;对所述有效信息进行深度分析,将资源按照操作符的先后顺序生成资源有向网络图;将所述资源有向图通过遍历算法遍历出所有路径,生成所有以资源为线索的测试案例。2.根据权利要求1所述的基于主机代码解析生成测试案例的方法,其特征在于,所述对主机程序代码进行解析,根据编码语言的关键字识别出各个功能模块,还包括:根据存储在代码分析数据库中的操作符关键字、资源关键字,识别出所述每个功能模块对资源所采用的所有操作。3.根据权利要求2所述的基于主机代码解析生成测试案例的方法,其特征在于,所述根据所述各个功能模块对资源的所有操作,生成所述各个功能模块的所有合成桩,并将所述合成桩插入到每个功能模块的程序中,具体包括:根据所述各个功能模块对资源所采用的所有操作,结合存储在代码分析数据库中的操作符关键字、资源关键字,生成所有“操作-类型-资源”的合成桩,并在每个功能模块的程序末插入所述合成桩。4.根据权利要求3所述的基于主机代码解析生成测试案例的方法,其特征在于,所述对所述有效信息进行深度分析,将资源按照操作符的先后顺序生成资源有向网络图,具体包括:通过对所述有效信息进行解析,搜索过滤数据中指定的分割符号、关键字,将主机资源名和对资源的操作分离出来,形成程序、主机资源及对资源的操作关系,并根据操作符先后顺序,形成程序对资源的操作顺序,生成所述资源有向网络图。5.根据权利要求4所述的基于主机代码解析生成测试案例的方法,其特征在于,所述将所述资源有向图通过遍历算法遍历出所有路径,生成所有以资源为线索的测试案例,具体包括:通过对所述资源有向网络图分析,以资源为线索,找到与之相关的全部前后项,搜寻所需的表、文件、程序,通过所述遍历算法,配合资源在程序中的别名,并根据资源和别名的一一对应关系,形成针对主机系统的所有测试案例。6.一种基于主机代码解析生成测试案例的装置,其特征在于,包括:代码解析模块,用于对主机程序代码进行解...

【专利技术属性】
技术研发人员:郭丽徐玉梅曲寅生张佑飞徐伟
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京,11

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

1