一种软件数据的测试方法和系统的制作方法

文档序号:6630168阅读:430来源:国知局
一种软件数据的测试方法和系统的制作方法
【专利摘要】本发明公开了一种软件数据的测试方法,应用于测试系统,系统包括主引擎和分引擎,主引擎启动后读取分引擎配置文件,生成分引擎名称类型映射表,等待分引擎注册,分引擎发送注册信息后依据分引擎名称类型映射表检查注册信息是否匹配,如果匹配则分引擎注册成功,之后主引擎将解析后的测试语句发送给分引擎,分引擎处理测试语句并将结果输出给主引擎。本发明还公开了一种软件数据的测试系统。采用本发明的方法,可以实现对软件数据的自动化测试,满足测试数据量大时的测试需求,省时高效。
【专利说明】一种软件数据的测试方法和系统

【技术领域】
[0001]本发明涉及数据测试领域,特别是涉及一种产品数据的测试方法和系统。

【背景技术】
[0002]铁路是重要的国家交通运输命脉,也是人们生活中不可或缺的交通方式。铁路信号系统是铁路运行中的基础设施,它的产生提高了铁路运输的安全和效率。随着我国铁路交通建设的快速发展,铁路信号系统已经向着数字化、智能化、综合自动化的方向发展,产生了许多铁路信号软件产品,这些铁路信号软件产品投入使用过程中必须进行可靠规范的测试工作。
[0003]传统铁路信号的测试大多采用手工测试,在对铁路信号软件产品进行测试时,往往需要收集大量的工程数据,而且随着设计和施工的进行,这些工程数据在不断修改,在对这些软件产品的工程数据进行测试时,测试的案例数目和工程数据规模都特别大,手工测试并不能满足测试的需求。


【发明内容】

[0004]有鉴于此,本发明的主要目的在于提供一种软件数据的测试方法和系统,可以实现对软件数据的自动化测试。
[0005]为实现上述目的,本发明提供了一种软件数据的测试方法,该方法应用于测试系统中,所述系统包括:主引擎和分引擎;
[0006]所述方法包括:
[0007]主引擎启动,验证脚本文件、分引擎类型对应的协议和分引擎的配置文件是否存在,验证通过后,读取分引擎名称类型配置文件,生成分引擎名称类型映射表,等待分引擎发送包含所述分引擎名称和类型的注册信息;
[0008]所述主引擎接收需要连接的分引擎发送的所述注册信息,在分引擎名称类型映射表中查找所述分引擎的名称和类型是否有相应的储存,若可以查找到相应的储存,则与所述分引擎匹配成功;
[0009]匹配成功后,所述主引擎解析所述测试脚本获得测试语句,将所述测试语句发送至匹配成功的所述分引擎,等待所述分引擎对测试消息进行处理后的测试结果;
[0010]所述主引擎接收所述分引擎输出的测试结果。
[0011]优选的,所述方法还包括:
[0012]主引擎启动前为主引擎分配要运行的脚本文件、需要连接的分引擎类型和分引擎的配置文件。
[0013]优选的,,所述主引擎接收需要连接的分引擎发送的所述注册信息还包括:
[0014]主引擎接收到包含分引擎名称和类型的消息后对包含分引擎名称和类型的消息根据所述分引擎类型对应的协议进行解析,解析为主引擎可以识别的格式;
[0015]优选的,,所述主引擎接收所述分引擎输出的测试结果还包括:
[0016]主引擎接收到测试结果后对分引擎输出的测试结果根据所述分引擎类型对应的协议进行解析,解析为主引擎可以识别的格式;
[0017]优选的,,所述分引擎对测试消息进行处理包括:
[0018]所述分引擎将所述主引擎发送的测试消息发送给需要测试的功能单元;
[0019]所述需要测试的功能单元处理所述测试消息并将测试结果发送给所述分引擎。
[0020]优选的,所述方法还包括:
[0021 ] 所述主引擎统计所述测试结果并生成测试报告。
[0022]优选的,所述方法还包括:
[0023]主引擎收到测试结果后,保存匹配成功的所述分引擎的信息,根据所述分引擎的信息在分引擎名称类型映射表中查找所述分引擎,驱动查找到的所述分引擎使其停止运行,之后主引擎也停止运行。
[0024]本发明还提供了一种软件数据测试系统,系统包括:主引擎和分引擎:
[0025]所述主引擎用于解析测试脚本并驱动分引擎测试;
[0026]所述分引擎用于对测试消息进行处理;
[0027]所述主引擎包括:配置管理单元、消息解析单元、信息查找单元、脚本控制单元和分引擎管理单元;
[0028]所述配置管理单元用于在所述主引擎启动时,读取分引擎名称类型配置文件,生成分引擎名称类型映射表;
[0029]所述消息解析单元用于对接收分引擎消息前先对所述消息根据所述分引擎类型对应的协议进行解析,解析为主引擎可以识别的消息;
[0030]所述信息查找单元用于根据所述分引擎的名称在所述分引擎信息映射表中查找获得所述分引擎的类型;
[0031]所述脚本控制单元用于解析测试脚本,得到测试语句;
[0032]所述分引擎管理单元用于向所述分引擎发送测试语句并从所述分引擎接收测试结果。
[0033]优选的,所述主引擎还包括:
[0034]信息接收单元,用于接收为主引擎分配的要运行的脚本文件、需要连接的分引擎类型的协议文件和分引擎的配置文件;
[0035]统计单元,用于统计测试结果;
[0036]生成单元,用于将统计的测试结果生成测试报告。
[0037]应用本发明提供的软件数据的测试方法,主引擎启动后读取分引擎配置文件,生成分引擎名称类型映射表,等待分引擎注册,分引擎发送注册信息后依据分引擎名称类型映射表检查注册信息是否匹配,如果匹配则分引擎注册成功,之后主引擎将解析后的测试语句发送给分引擎,分引擎处理测试语句并将结果输出给主引擎,从而实现了对软件数据的自动化测试,可以满足测试数据量大时的测试需求,省时高效。

【专利附图】

【附图说明】
[0038]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0039]图1为本发明软件数据测试方法的流程图;
[0040]图2为本发明软件数据测试方法的一详细流程图;
[0041]图3为本发明软件数据测试方法的具体实施例流程图;
[0042]图4为本发明软件数据测试系统的结构示意图;
[0043]图5为本发明软件数据测试系统一具体实施例的结构示意图;
[0044]图6为本发明软件数据测试系统的又一结构示意图。

【具体实施方式】
[0045]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046]本发明提出的软件数据测试方法,主要包括主引擎和分引擎两大部分。主引擎相当于测试过程中的总体控制器,分引擎模拟测试环境中相对独立的功能单元,相对独立的功能单元既可以是被测试的目标系统,也可以是与目标系统有交互的功能单元。
[0047]请参考图1,示出了本发明软件数据测试方法的流程图,具体包括以下步骤:
[0048]步骤SlOl:主引擎启动,验证脚本文件、分引擎类型对应的协议和分引擎的配置文件是否存在,验证通过后,读取分引擎名称类型配置文件,生成分引擎名称类型映射表,等待分引擎发送包含所述分引擎名称和类型的注册信息;
[0049]主引擎程序开始执行后,分别判断脚本文件、分引擎类型对应的协议和分引擎的配置文件是否存在,若脚本文件、分引擎类型对应的协议和分引擎的配置文件都存在时,读取所述配置文件,通过配置文件生成分引擎信息映射表,此映射表中有分引擎的名称和类型对应关系的储存,此时主引擎启动成功,等待分引擎注册,分引擎注册时向主引擎发送包含名称和类型的注册信息。
[0050]步骤S102:所述主引擎接收需要连接的分引擎发送的所述注册信息,在分引擎名称类型映射表中查找所述分引擎的名称和类型是否有相应的储存,若可以查找到相应的储存,则与所述分引擎匹配成功;
[0051]分引擎向主引擎发送注册信息后,主引擎接收此注册信息并验证此分引擎是否能够与主引擎进行匹配,主引擎在生成的分引擎名称类型映射表中查找向主引擎发送注册信息的分引擎,若在所述映射表中可以查找到此分引擎名称和类型信息的相应存储,则此分引擎与主引擎匹配成功。
[0052]步骤S103:匹配成功后,所述主引擎解析所述测试脚本获得测试语句,将所述测试语句发送至匹配成功的所述分引擎,等待所述分引擎对测试消息进行处理后的测试结果;
[0053]主引擎与分引擎匹配成功后,主引擎首先对前述脚本文件进行解析得到分引擎可以识别的测试语句,解析成功后将测试语句发送至分引擎,并等待分引擎对测试语句的处理结果。
[0054]步骤S104:所述主引擎接收所述分引擎输出的测试结果。
[0055]分引擎将测试结果反馈给主引擎,主引擎接收此结果,测试完成。
[0056]应用本发明实施例提供的软件数据测试方法,主引擎检查与分引擎连接所必需的脚本文件、协议文件和配置文件是否存在,并通过配置文件生成分引擎的名称类型对应关系的映射表,主引擎启动成功后等待分引擎注册,分引擎向主引擎发送包含名称和类型的注册信息后主引擎检查此注册信息是否在所属映射表中有对应储存,检查通过后主引擎与分引擎匹配成功,之后主引擎将解析后的测试语句发送至分引擎,分引擎对测试语句进行处理后将结果发送至主引擎,完成测试过程,实现了对软件数据的自动化测试,满足测试数据量大时的测试需求,省时高效。
[0057]一般情况下,分引擎是基于ACE自适配通信环境的事件响应框架实现的,开发分引擎之前需要定义分引擎与主引擎通信的协议,并根据协议生成程序代码,用于主引擎和分引擎解析通信消息。分引擎启动之后进入等待状态,直至收到了主引擎发送过来的消息;之后分引擎解析收到的消息,根据消息的内容进行逻辑处理,既可以进行相应的计算,也可以利用分引擎内部的网络通信功能与其他分引擎或者被测系统进行通信;处理完成之后,分引擎将最终的结果或者状态返回给主引擎,然后再次进入等待主引擎消息的状态。
[0058]有时部分软件产品的功能单元因为安全、开发难度或者其他问题,不能进行修改,为了扩大软件产品数据自动化测试技术的使用范围,本发明提供了一优选实施例,实现了代理分引擎,相当于主引擎和需要测试的功能单元之间的代理,图2示出了,为代理分引擎对测试消息处理的详细流程图,包括:
[0059]步骤S201:代理分引擎将主引擎发送的测试消息发送给需要测试的功能单元;
[0060]在主引擎看来代理分引擎与普通分引擎没有区别,但是代理分引擎接管了需要测试的功能单元的输入输出功能,相当于控制台,代理分引擎在收到测试消息后将测试消息发送给独立功能单元等待独立功能单元的处理。
[0061]步骤S202:需要测试的功能单元处理测试消息并将测试结果发送给代理分引擎。
[0062]需要测试的功能单元处理测试消息,然后将处理后的测试结果发送给代理分引擎,此时不必修改功能单元程序,也完成了测试的过程,代理分引擎实现了代理的工作。
[0063]应用本实施例的方法,针对功能固定不便于修改适配的功能单元,利用代理分引擎来作为主引擎和功能单元之间的代理,可以重定向功能单元的输入输出,不需要修改其程序也可以完成测试,大大增加了本发明提出的测试技术的适用性。
[0064]如图3所示,为本发明软件数据测试方法的一优选实施例流程图,对铁路信号软件产品进行测试,以在计算机上运行测试过程为例,方法包括:
[0065]步骤S300:为主引擎分配要运行的脚本文件、需要连接的分引擎类型和分引擎的配置文件;
[0066]在需要对软件数据进行测试时,首先在命令行输入启动主引擎的命令,并为主引擎指定要运行的脚本、测试中运行的分引擎类型和分引擎的配置文件,其中脚本文件就是用脚本语言描述测试执行过程的文件;分引擎类型对应协议用来支持主引擎和分引擎之间的通信,类型是指分引擎与主引擎通信的消息协议格式类型,只要采用同一种消息格式,对于主引擎而研究是同一种类型;分引擎的配置文件中包含分引擎的名称和类型的信息。优选的,此时系统还会为主引擎指定主引擎要占用的端口,也可以自己为主引擎设定要占用的端口。
[0067]步骤S301:主引擎启动,验证脚本文件、分引擎类型对应的协议和分引擎的配置文件是否存在,验证通过后,读取分引擎名称类型配置文件,生成分引擎名称类型映射表,等待分引擎注册;
[0068]主引擎程序开始执行后,分别判断脚本文件、分引擎类型对应的协议程序和配置文件是否存在,检查要使用的端口是否被占用,所有检查通过后,读取分引擎名称类型的配置文件,由配置文件生成一个映射表,包含分引擎的名称和类型的对应关系,此时主引擎启动成功,等待分引擎连接和注册。测试语言以java为例,主引擎中包含的分引擎类型对应的协议程序则为java程序,此java协议程序相当于主引擎和分引擎之间信息交互的翻译。
[0069]步骤S302:所述主引擎接收需要连接的分引擎发送的所述注册信息,在分引擎名称类型映射表中查找所述分引擎的名称和类型是否有相应的储存,若可以查找到相应的储存,则与所述分引擎匹配成功;
[0070]主引擎启动成功后,在命令行输入启动分引擎的命令,为分引擎指定要连接的主引擎ip地址、端口、要连接的分引擎的名称等信息,分引擎程序开始执行后,向主引擎发送包含名称和类型的注册信息。主引擎收到分引擎发送的注册信息后,主对包含分引擎名称和类型的消息根据所述分引擎类型对应的协议进行解析,解析为主引擎可以识别的格式,并在分引擎名称和类型映射表中进行匹配,查找映射表中是否有此分引擎的名称和类型的存储,如果查找成功,则主引擎与分引擎匹配成功,分引擎注册成功。
[0071]步骤S303:匹配成功后,所述主引擎解析所述测试脚本获得测试语句,将所述测试语句发送至匹配成功的所述分引擎,等待所述分引擎对测试消息进行处理后的测试结果;
[0072]有时需要连接注册到主引擎的分引擎可能有多个,待所有分引擎都注册成功后,主引擎向这些注册成功的分引擎发送测试语句,发送之前对主引擎中的测试脚本先进行解析得到分引擎可以识别的测试语句,分引擎接收到解析后的测试语句后对语句进行处理得到测试结果并将测试结果发送至主引擎。以java中的TCL工具命令脚本语言为例,解析脚本后得到send语句和expect语句,形成脚本数据流,send语句描述了向分引擎发送消息的内容,语句会指定分引擎的名称和发送消息的内容,expect语句等待分引擎返回处理结果,并进行字符串的正则匹配,通过send和expect语句进行配合,可以有效检测分引擎对发送的消息进行的处理。分引擎与主引擎的通信需要遵循一定的消息协议格式,并提供解析消息的程序,因此需要修改被测试软件的功能单元,满足与主引擎通信的要求。有些铁路信号软件已经上线稳定运行多年,不便于修改网络通信部分,此时分引擎可以起到主引擎和功能单元的代理,切换成为代理分引擎,此时在主引擎看来代理分引擎与普通分引擎没有区别,但是代理分引擎接管了需要测试的功能单元的输入输出功能,相当于控制台,代理分引擎在收到测试消息后将测试消息发送给独立功能单元等待独立功能单元的处理,需要测试的功能单元处理测试消息,然后将处理后的测试结果发送给代理分引擎,此时不必修改功能单元程序,也完成了测试的过程。
[0073]步骤S304:所述主引擎接收所述分引擎输出的测试结果;
[0074]分引擎对测试语句进行处理后得到处理结果,分引擎将此测试结果反馈给主引擎,主引擎接收分引擎输出的测试结果并解析成为可以识别的消息格式,测试完成。
[0075]步骤S305:主引擎统计所述测试结果并生成测试报告;
[0076]测试完成后主引擎统计测试结果生成测试报告,报告内容可以为说明测试脚本通过或者说明脚本执行失败并报告失败原因。
[0077]步骤S306:主引擎生成报告后,保存匹配成功的所述分引擎的信息,根据所述分引擎的信息在分引擎名称类型映射表中查找所述分引擎,驱动查找到的所述分引擎使其停止运行,之后主弓I擎也停止运行。
[0078]主引擎生成报告后保存所有已注册的分引擎名称,根据分引擎名称在映射表中查找所有注册分引擎的连接信息,然后主引擎生成一条特殊的指令要求分引擎停止运行或测试机操作系统主动结束分引擎程序,将结束指令发送给分引擎,停止所有的分引擎程序,主引擎也执行结束,测试过程完成。在设计铁路的线路、站场时,可能需要收集大量的工程数据,而且随着设计和施工的进行,这些工程数据在不断修改;此外,铁路信号软件可能在不断修改升级。因此测试就包括测试工程数据是否正确,和工程数据不变的情况下信号软件修改升级是否正确,测试数据量很大,应用本实施例的方法,测试执行过程主要依靠计算机完成,主引擎可以解析测试脚本、驱动多个分引擎进行测试和统计最终的测试结果,针对不能按照本发明提出的测试架构修改的铁路信号产品功能单元,本实施例实现了代理分引擎的功能,可以重定向功能单元进程的输入输出,满足测试架构的要求,实现了软件数据的自动化测试,有效降低了回归测试中的人力与时间消耗,可以显著提高了铁路信号软件的质量,代理分引擎的实现也大大增加了本发明提出的测试技术的适用性。
[0079]与本发明提供的软件数据测试方法对应的,本发明中,还涉及一种软件数据测试系统,系统包括:主引擎和分引擎,如图4所示,主引擎包括:
[0080]配置管理单元101、消息解析单元102、信息查找单元103、脚本控制单元104和分引擎管理单元105 ;
[0081]其中:
[0082]所述配置管理单元101用于在所述主引擎启动时,读取分引擎名称类型配置文件,生成分引擎名称类型映射表;
[0083]所述消息解析单元102用于对接收分引擎消息前先对所述消息根据所述分引擎类型对应的协议进行解析,解析为主引擎可以识别的消息;
[0084]所述信息查找单元103用于根据所述分引擎的名称在所述分引擎信息映射表中查找获得所述分引擎的类型;
[0085]所述脚本控制单元104用于解析测试脚本,得到测试语句;
[0086]所述分引擎管理单元105用于向所述分引擎发送测试语句并从所述分引擎接收测试结果。
[0087]本发明实施例中,当需要对软件数据进行测试时,在命令行输入启动主引擎的命令,主引擎启动后读取分引擎配置文件,生成分引擎名称类型映射表,等待分引擎注册,分引擎发送注册信息后依据分引擎名称类型映射表检查注册信息是否匹配,如果匹配则分引擎注册成功,之后主引擎将解析后的测试语句发送给分引擎,分引擎处理测试语句并将结果输出给主引擎,从而实现了对软件数据的自动化测试,可以满足测试数据量大时的测试需求,省时高效。
[0088]如图5所示,为应用本发明软件数据测试系统具体实施例,系统中的主引擎设置有:
[0089]配置管理模块201、命令/消息解析模块202、命令接口模块203、脚本控制模块204和分引擎管理模块205 ;
[0090]所述配置管理模块201负责管理分引擎名称和类型的映射表。在主引擎启动时,该模块读取分引擎的配置文件,生成分引擎名称和类型的映射表;同时该模块还提供通过给定的分引擎名称查找分引擎类型的功能;
[0091]所述命令/消息解析模块202依据主引擎与分引擎通信协议的解析程序对发送给分引擎的命令进行组装并对从分引擎收到的消息进行解析,使主引擎和分引擎用相同格式的网络协议进行通信;
[0092]所述命令接口模块203根据分引擎的名称,在分引擎名称和类型的映射表中进行查找,获得分引擎的类型,然后加载相应类型的解析协议程序,并提供给命令/消息解析模块 202 ;
[0093]所述分引擎管理模块204实现分引擎的管理功能,完成管理主引擎和分引擎通信的网络连接,以及通过网络连接向分引擎发送消息和从分引擎接收消息的过程。当收到一个向分引擎发送消息的请求后,主引擎会在映射表中根据分引擎名称进行查找,获得与分弓I擎通信的连接,通过该连接发送消息。
[0094]所述脚本控制模块205负责解析测试脚本,根据测试脚本中描述的逻辑调用其他模块完成测试。本实施例中编写测试脚本主要使用TCL工具命令脚本语言,使用了两个特殊的命令语句,分别是send和expect。send语句描述了向分引擎发送消息的内容,语句会指定分引擎的名称和发送消息的内容;expect语句等待分引擎返回处理结果,并进行字符串的正则匹配。通过send和expect语句进行配合,可以有效检测分引擎对消息的处理。当所有测试语句执行完成或者因为异常而结束时,脚本控制模块205还负责生成测试报告,统计测试的结果。
[0095]如图6所示,图4所述的软件数据测试系统,还设置有:
[0096]信息接收单元100、统计单元106和生成单元107 ;
[0097]其中:
[0098]所述信息接收单元100用于接收为主引擎分配的的要运行的脚本文件、需要连接的分引擎类型的解析文件和分引擎的配置文件;
[0099]所述统计单元106用于统计测试结果;
[0100]所述生成单元107用于将统计的测试结果生成测试报告。
[0101]需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于系统的实施例,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0102]最后,还需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0103]为了描述的方便,描述以上此方法对应的系统时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
[0104]通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如R0M/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0105]以上对本发明所提供的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种软件数据测试方法,其特征在于,所述方法应用于测试系统中,所述系统包括:主引擎和分引擎; 所述方法包括: 主引擎启动,验证脚本文件、分引擎类型对应的协议和分引擎的配置文件是否存在,验证通过后,读取分引擎名称类型配置文件,生成分引擎名称类型映射表,等待分引擎发送包含所述分引擎名称和类型的注册信息; 所述主引擎接收需要连接的分引擎发送的所述注册信息,在分引擎名称类型映射表中查找所述分引擎的名称和类型是否有相应的储存,若可以查找到相应的储存,则与所述分引擎匹配成功; 匹配成功后,所述主引擎解析所述测试脚本获得测试语句,将所述测试语句发送至匹配成功的所述分引擎,等待所述分引擎对测试消息进行处理后的测试结果; 所述主引擎接收所述分引擎输出的测试结果。
2.根据权利要求1所述的方法,其特征在于,还包括: 主引擎启动前为主引擎分配要运行的脚本文件、需要连接的分引擎类型和分引擎的配置文件。
3.根据权利要求1所述的方法,其特征在于,所述主引擎接收需要连接的分引擎发送的所述注册信息还包括: 主引擎接收到包含分引擎名称和类型的消息后对包含分引擎名称和类型的消息根据所述分引擎类型对应的协议进行解析,解析为主引擎可以识别的格式。
4.根据权利要求1所述的方法,其特征在于,所述主引擎接收所述分引擎输出的测试结果还包括: 主引擎接收到测试结果后对分引擎输出的测试结果根据所述分引擎类型对应的协议进行解析,解析为主引擎可以识别的格式。
5.根据权利要求1所述的方法,其特征在于,所述分引擎对测试消息进行处理包括: 所述分引擎将所述主引擎发送的测试消息发送给需要测试的功能单元; 所述需要测试的功能单元处理所述测试消息并将测试结果发送给所述分引擎。
6.根据权利要求1所述的方法,其特征在于,还包括: 所述主引擎统计所述测试结果并生成测试报告。
7.根据权利要求1所述的方法,其特征在于,还包括: 主引擎收到测试结果后,保存匹配成功的所述分引擎的信息,根据所述分引擎的信息在分引擎名称类型映射表中查找所述分引擎,驱动查找到的所述分引擎使其停止运行,之后主引擎也停止运行。
8.一种软件数据测试系统,其特征在于,系统包括:主引擎和分引擎: 所述主引擎用于解析测试脚本并驱动分引擎测试; 所述分引擎用于对测试消息进行处理; 所述主引擎包括:配置管理单元、消息解析单元、信息查找单元、脚本控制单元和分引擎管理单元; 其中: 所述配置管理单元用于在所述主引擎启动时,读取分引擎名称类型配置文件,生成分引擎名称类型映射表; 所述消息解析单元用于对接收分引擎消息前先对所述消息根据所述分引擎类型对应的协议进行解析,解析为主引擎可以识别的消息; 所述信息查找单元用于根据所述分引擎的名称在所述分引擎信息映射表中查找获得所述分引擎的类型; 所述脚本控制单元用于解析测试脚本,得到测试语句; 所述分引擎管理单元用于向所述分引擎发送测试语句并从所述分引擎接收测试结果。
9.根据权利要求8所述的系统,其特征在于,所述主引擎还包括: 信息接收单元,用于接收为主引擎分配的要运行的脚本文件、需要连接的分引擎类型的协议文件和分引擎的配置文件; 统计单元,用于统计测试结果; 生成单元,用于将统计的测试结果生成测试报告。
【文档编号】G06F11/36GK104239216SQ201410542382
【公开日】2014年12月24日 申请日期:2014年10月14日 优先权日:2014年10月14日
【发明者】高强, 江明, 陈磊, 宋惠, 王晓懿, 冯晨, 陈勇, 孙愚 申请人:北京全路通信信号研究设计院有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1