一种基于集群架构的软件自动测试装置及系统的制作方法

文档序号:6510080阅读:358来源:国知局
一种基于集群架构的软件自动测试装置及系统的制作方法
【专利摘要】本发明披露了一种基于集群架构的软件自动测试装置及系统,该装置包括:Socket通信模块传输操作待测系统的命令和接收待测系统返回的命令执行结果;测试脚本运行模块收集待测系统的所有测试用例脚本,通过Socket通信模块向待测系统发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块;待测系统操作模块将待测系统的操作命令输出给测试脚本运行模块;测试过程记录模块记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性。本发明在高可用集群系统中达到自动化测试的效果。
【专利说明】一种基于集群架构的软件自动测试装置及系统
【技术领域】
[0001]本发明涉及计算机软件测试技术,尤其涉及基于集群架构的软件自动测试系统及
装直。
【背景技术】
[0002]随着Internet服务和信息化建设的不断发展,对服务器的可伸缩性和高可用性的要求也变得越来越高。集群技术的出现和IA架构(Intel Architecture)服务器的快速发展为社会的需求提供了新的选择。IA架构服务器是指采用了英特尔处理器的服务器。由于该架构服务器采用了开放式体系,并且实现了工业标准化技术和得到国内外大量软硬件供应商的支持,在大批量生产的基础上,以其极高的性价比而在全球范围内,尤其在我国得到广泛的应用。IA架构服务器价格低廉,易于使用和维护,而且采用集群技术可以构造超级计算机,其超强的处理能力可以取代价格昂贵的中大型机,为行业的高端应用开辟了新的方向。尤其是最近几年,集群技术迅速发展,已经成为构建超级计算机系统的主流架构之
O
[0003]在最新发布的T0P500 (为高性能计算机提供统计的组,属计算机系统部分)中,基于集群架构的硬件系统已经增至500个,所占比例达72%,并在数量上仍有不断增加的趋势,可见集群技术在高性能计算领域有着旺盛的生命力和广阔的发展前景。
[0004]然而,目前高可用集群系统中的软件测试还主要靠手工进行测试,其测试系统的架构如图1所示。在软件测试初期,需要通过人工方式搭建测试环境,编写巨量的测试用例,并一一执行每一个测试用例,以及进行发散测试。随着软件版本上升推动测试的进展以及软件开发周期的缩短,每个软件版本测试的周期却无法缩短,测试效率亦无法提高,并对软件迭代版本没有较好的防护。因此,在当前集群技术高速发展的时期,对集群软件开发周期、质量等要求越来越高,提供一种适用于高可用集群系统的软件自动化测试系统就显得非常必要了。

【发明内容】

[0005]本发明所要解决的技术问题是提供一种基于集群架构的软件自动测试装置及系统,能够适用于高可用集群系统的软件自动测试。
[0006]为了解决上述技术问题,本发明提供了一种基于集群架构的软件自动测试装置,包括依次连接的测试过程记录模块以及测试脚本运行模块,还包括与测试脚本运行模块连接的待测系统操作模块以及Socket通信模块,其中:
[0007]Socket通信模块,用于传输操作待测系统的命令和接收待测系统返回的命令执行结果;
[0008]测试脚本运行模块,用于收集待测系统的所有测试用例脚本,通过Socket通信模块向待测系统发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块;[0009]待测系统操作模块,用于将待测系统的操作命令输出给测试脚本运行模块;
[0010]测试过程记录模块,用于记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性。
[0011 ] 进一步地,该装置还包括与待测系统操作模块连接的集群控制模块,其中:
[0012]集群控制模块,用于将待测系统中一定包格式的待测集群软件的操作命令输出给测试脚本运行模块;
[0013]测试脚本运行模块收集的待测系统的所有测试用例脚本包括所有集群软件的测试用例脚本;通过Socket通信模块向待测系统发出执行测试用例脚本的操作命令包括所有集群软件执行测试用例脚本的操作命令,以及输出的统计结果包括对所有集群软件统计的测试用例脚本执行的时间和结果。
[0014]进一步地,待测集群软件向Socket通信模块提供接口,由Socket通信模块调用该接口。
[0015]进一步地,Socket通信模块包括Socket服务端和Socket客户端;其中Socket服务端部署在待测系统上,Socket客户端部署在该自动测试装置上。
[0016]为了解决上述技术问题,本发明提供了一种基于集群架构的软件自动测试系统,包括如前所述的测试装置和待测系统,其中:
[0017]Socket通信模块,用于传输操作待测系统的命令和接收待测系统返回的命令执行结果;
[0018]测试脚本运行模块,用于收集待测系统的所有测试用例脚本,通过Socket通信模块向待测系统发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块;
[0019]待测系统操作模块,用于将待测系统的操作命令输出给测试脚本运行模块;
[0020]测试过程记录模块,用于记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性;
[0021]待测系统,用于作为测试对象通过Socket通信模块供测试脚本运行模块进行操作命令的执行,并返回命令执行结果。
[0022]进一步地,该装置还包括与待测系统操作模块连接的集群控制模块,其中:
[0023]集群控制模块,用于将待测系统中一定包格式的待测集群软件的操作命令输出给测试脚本运行模块;
[0024]测试脚本运行模块收集的待测系统的所有测试用例脚本包括所有集群软件的测试用例脚本;通过Socket通信模块向待测系统发出执行测试用例脚本的操作命令包括所有集群软件执行测试用例脚本的操作命令,以及输出的统计结果包括对所有集群软件统计的测试用例脚本执行的时间和结果。
[0025]进一步地,待测集群软件向所述Socket通信模块提供接口,由Socket通信模块调用该接口。
[0026]进一步地,Socket通信模块包括Socket服务端和Socket客户端;其中Socket服务端部署在待测系统上,Socket客户端部署在该自动测试装置上。
[0027]本发明的基于集群架构的测试装置具有模块化划分而灵活扩展移植的特性,体现在扩展或者移植某一模块时,基本不用或很少对其它模块进行修改,从而减少框架应用的复杂度。通过Socket通信方式操作待测系统并返回结果的特性,使测试结果可以通过测试脚本检查,从而达到自动化测试的效果。上述优点,使得高可用集群软件版本发布质量提高,并提高了脚本编写效率及测试效率,因而在高可用集群应用系统中具有非常广阔的发展前景。
【专利附图】

【附图说明】
[0028]图1为现有的手工方式测试高可用集群系统的软件测试架构示意图;
[0029]图2为本发明的基于集群架构的软件自动测试系统实施例的结构示意图。
【具体实施方式】
[0030]以下结合附图和优选实施例对本发明的技术方案进行详细地阐述。应该理解,以下列举的实施例仅用于说明和解释本发明,而不构成对本发明技术方案的限制。
[0031]如图1所示,表示了本发明提供的基于集群架构的软件自动测试系统实施例的结构,包括:测试装置和待测系统,其中测试装置包括依次连接的测试过程记录模块以及测试脚本运行模块,还包括与测试脚本运行模块连接的待测系统操作模块以及Socket通信模块,其中:
[0032]Socket通信模块,用于作为测试装置的核心,传输操作待测系统的命令和接收待测系统返回的命令执行结果;
[0033]测试脚本运行模块,用于收集待测系统的所有测试用例脚本,通过Socket通信模块向待测系统发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块;
[0034]待测系统操作模块,用于将待测系统的操作命令输出给测试脚本运行模块;
[0035]测试过程记录模块,用于记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性。
[0036]上述系统实施例还包括与待测系统操作模块连接的集群控制模块,其中:
[0037]集群控制模块,用于将待测系统中一定包格式的待测集群软件的操作命令输出给测试脚本运行模块;
[0038]测试脚本运行模块收集的待测系统的所有测试用例脚本包括所有集群软件的测试用例脚本,通过Socket通信模块向待测系统发出执行测试用例脚本的操作命令包括所有集群软件执行测试用例脚本的操作命令,以及输出的统计结果包括对所有集群软件统计的测试用例脚本执行的时间和结果;
[0039]待测系统,用于作为测试对象通过Socket通信模块供测试脚本运行模块进行操作命令的执行,并返回命令执行结果。
[0040]在上述系统实施例中提到的Socket通信模块,主要包括Socket服务端和Socket客户端;其中Socket服务端部署在待测试系统上,Socket客户端部署在测试装置上。
[0041]该Socket通信模块作为此测试装置的核心模块,起到最底层的核心交互作用,因而要求该Socket服务端开机自启动。Socket通信模块主要负责传输执行测试脚本的命令及待测系统返回的执行结果,采用一问一答方式来实现。
[0042]在上述系统实施例中,[0043]由于该测试装置要求对集群软件进行控制,因而需要待测集群软件向Socket通信模块提供接口,由Socket通信模块调用,以便能够操作待测集群软件。
[0044]在一个典型的配置环境中,可以采用2台服务器作为待测的集群服务器,I台PC机或服务器作为测试装置,Socket通信模块负责测试装置与待测的集群服务器进行通信,由待测系统操作模块负责操作这2台集群服务器,检查其中集群软件的运行结果,由集群控制模块负责对集群软件进行启动、停止等操作,由测试脚本运行模块和测试过程记录模块负责收集该集群软件所有的测试脚本,并执行所有的测试脚本,最后形成测试结果以及统计信息,从而构建出集群软件系统的自动化软件测试框架。
[0045]本发明与传统的手工高可用集群软件测试相比,这种高可用集群软件自动化测试框架具有高可移植性、高可扩展,以及高测试执行效率等特性。其中,高可移植性的实现方式是指:在这种高可用集群软件自动化测试框架中,待测系统操作模块、集群控制模块都是通过封装的方式实现,当测试脚本需要在不同的系统之间进行移植时,只需要通过修改装置的模块底层实现,不需要修改任何测试脚本本身,从而提高了可移植性。高可扩展的实现方式是指:在这种高可用集群软件自动化测试框架中,待测系统操作模块、集群控制模块中是通过对象的方式实现,添加任何模块、以及为模块添加功能,都不会对原来测试脚本有任何影响。
[0046]本发明的高可用集群软件自动化测试框架所具有的上述优点,使得其提高了高可用集群软件版本发布质量,提高了当前手工测试的效率以及脚本开发效率,因而具有非常广阔的发展前景。
【权利要求】
1.一种基于集群架构的软件自动测试装置,其特征在于,包括依次连接的测试过程记录模块以及测试脚本运行模块,还包括与测试脚本运行模块连接的待测系统操作模块以及Socket通信模块,其中: Socket通信模块,用于传输操作待测系统的命令和接收待测系统返回的命令执行结果; 测试脚本运行模块, 用于收集待测系统的所有测试用例脚本,通过Socket通信模块向待测系统发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块; 待测系统操作模块,用于将待测系统的操作命令输出给测试脚本运行模块; 测试过程记录模块,用于记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性。
2.按照权利要求1所述的装置,其特征在于,还包括与所述待测系统操作模块连接的集群控制模块,其中: 集群控制模块,用于将待测系统中一定包格式的待测集群软件的操作命令输出给所述测试脚本运行模块; 所述测试脚本运行模块收集的待测系统的所有测试用例脚本包括所有集群软件的测试用例脚本;通过所述Socket通信模块向待测系统发出执行测试用例脚本的操作命令包括所有集群软件执行测试用例脚本的操作命令,以及输出的统计结果包括对所有集群软件统计的测试用例脚本执行的时间和结果。
3.按照权利要求2所述的装置,其特征在于,所述待测集群软件向所述Socket通信模块提供接口,由所述Socket通信模块调用所述接口。
4.按照权利要求1至3任一项所述的装置,其特征在于,所述Socket通信模块包括Socket服务端和Socket客户端;其中Socket服务端部署在待测系统上,Socket客户端部署在所述自动测试装置上。
5.一种基于集群架构的软件自动测试系统,包括如权利要求1所述的测试装置和待测系统,其特征在于, Socket通信模块,用于传输操作待测系统的命令和接收待测系统返回的命令执行结果; 测试脚本运行模块,用于收集待测系统的所有测试用例脚本,通过Socket通信模块向待测系统发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块; 待测系统操作模块,用于将待测系统的操作命令输出给测试脚本运行模块; 测试过程记录模块,用于记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性; 待测系统,用于作为测试对象通过Socket通信模块供测试脚本运行模块进行所述操作命令的执行,并返回所述命令执行结果。
6.按照权利要求5所述的系统,其特征在于,所述装置还包括与所述待测系统操作模块连接的集群控制模块,其中: 集群控制模块,用于将待测系统中一定包格式的待测集群软件的操作命令输出给所述测试脚本运行模块; 所述测试脚本运行模块收集的待测系统的所有测试用例脚本包括所有集群软件的测试用例脚本;通过所述Socket通信模块向待测系统发出执行测试用例脚本的操作命令包括所有集群软件执行测试用例脚本的操作命令,以及输出的统计结果包括对所有集群软件统计的测试用例脚本执行的时间和结果。
7.按照权利要求5所述的系统,其特征在于,所述待测集群软件向所述Socket通信模块提供接口,由所述Socket通信模块调用所述接口。
8.按照权利要求5至7任一项所述的系统,其特征在于,所述Socket通信模块包括Socket服务端和Socket客户端;其中Socket服务端部署在待测系统上,Socket客户端部署在所述自动 测试装置上。
【文档编号】G06F11/36GK103455423SQ201310395655
【公开日】2013年12月18日 申请日期:2013年9月3日 优先权日:2013年9月3日
【发明者】王志华, 殷雷, 陈宇龙 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1