CN103455423A - 一种基于集群架构的软件自动测试装置及*** - Google Patents

一种基于集群架构的软件自动测试装置及*** Download PDF

Info

Publication number
CN103455423A
CN103455423A CN2013103956559A CN201310395655A CN103455423A CN 103455423 A CN103455423 A CN 103455423A CN 2013103956559 A CN2013103956559 A CN 2013103956559A CN 201310395655 A CN201310395655 A CN 201310395655A CN 103455423 A CN103455423 A CN 103455423A
Authority
CN
China
Prior art keywords
test
module
examining system
script
communication module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2013103956559A
Other languages
English (en)
Other versions
CN103455423B (zh
Inventor
王志华
殷雷
陈宇龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Wave Cloud Computing Service Co Ltd
Original Assignee
Inspur Beijing Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201310395655.9A priority Critical patent/CN103455423B/zh
Publication of CN103455423A publication Critical patent/CN103455423A/zh
Application granted granted Critical
Publication of CN103455423B publication Critical patent/CN103455423B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明披露了一种基于集群架构的软件自动测试装置及***,该装置包括:Socket通信模块传输操作待测***的命令和接收待测***返回的命令执行结果;测试脚本运行模块收集待测***的所有测试用例脚本,通过Socket通信模块向待测***发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块;待测***操作模块将待测***的操作命令输出给测试脚本运行模块;测试过程记录模块记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性。本发明在高可用集群***中达到自动化测试的效果。

Description

一种基于集群架构的软件自动测试装置及***
技术领域
本发明涉及计算机软件测试技术,尤其涉及基于集群架构的软件自动测试***及装置。
背景技术
随着Internet服务和信息化建设的不断发展,对服务器的可伸缩性和高可用性的要求也变得越来越高。集群技术的出现和IA架构(Intel Architecture)服务器的快速发展为社会的需求提供了新的选择。IA架构服务器是指采用了英特尔处理器的服务器。由于该架构服务器采用了开放式体系,并且实现了工业标准化技术和得到国内外大量软硬件供应商的支持,在大批量生产的基础上,以其极高的性价比而在全球范围内,尤其在我国得到广泛的应用。IA架构服务器价格低廉,易于使用和维护,而且采用集群技术可以构造超级计算机,其超强的处理能力可以取代价格昂贵的中大型机,为行业的高端应用开辟了新的方向。尤其是最近几年,集群技术迅速发展,已经成为构建超级计算机***的主流架构之一。
在最新发布的TOP500(为高性能计算机提供统计的组,属计算机***部分)中,基于集群架构的硬件***已经增至500个,所占比例达72%,并在数量上仍有不断增加的趋势,可见集群技术在高性能计算领域有着旺盛的生命力和广阔的发展前景。
然而,目前高可用集群***中的软件测试还主要靠手工进行测试,其测试***的架构如图1所示。在软件测试初期,需要通过人工方式搭建测试环境,编写巨量的测试用例,并一一执行每一个测试用例,以及进行发散测试。随着软件版本上升推动测试的进展以及软件开发周期的缩短,每个软件版本测试的周期却无法缩短,测试效率亦无法提高,并对软件迭代版本没有较好的防护。因此,在当前集群技术高速发展的时期,对集群软件开发周期、质量等要求越来越高,提供一种适用于高可用集群***的软件自动化测试***就显得非常必要了。
发明内容
本发明所要解决的技术问题是提供一种基于集群架构的软件自动测试装置及***,能够适用于高可用集群***的软件自动测试。
为了解决上述技术问题,本发明提供了一种基于集群架构的软件自动测试装置,包括依次连接的测试过程记录模块以及测试脚本运行模块,还包括与测试脚本运行模块连接的待测***操作模块以及Socket通信模块,其中:
Socket通信模块,用于传输操作待测***的命令和接收待测***返回的命令执行结果;
测试脚本运行模块,用于收集待测***的所有测试用例脚本,通过Socket通信模块向待测***发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块;
待测***操作模块,用于将待测***的操作命令输出给测试脚本运行模块;
测试过程记录模块,用于记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性。
进一步地,该装置还包括与待测***操作模块连接的集群控制模块,其中:
集群控制模块,用于将待测***中一定包格式的待测集群软件的操作命令输出给测试脚本运行模块;
测试脚本运行模块收集的待测***的所有测试用例脚本包括所有集群软件的测试用例脚本;通过Socket通信模块向待测***发出执行测试用例脚本的操作命令包括所有集群软件执行测试用例脚本的操作命令,以及输出的统计结果包括对所有集群软件统计的测试用例脚本执行的时间和结果。
进一步地,待测集群软件向Socket通信模块提供接口,由Socket通信模块调用该接口。
进一步地,Socket通信模块包括Socket服务端和Socket客户端;其中Socket服务端部署在待测***上,Socket客户端部署在该自动测试装置上。
为了解决上述技术问题,本发明提供了一种基于集群架构的软件自动测试***,包括如前所述的测试装置和待测***,其中:
Socket通信模块,用于传输操作待测***的命令和接收待测***返回的命令执行结果;
测试脚本运行模块,用于收集待测***的所有测试用例脚本,通过Socket通信模块向待测***发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块;
待测***操作模块,用于将待测***的操作命令输出给测试脚本运行模块;
测试过程记录模块,用于记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性;
待测***,用于作为测试对象通过Socket通信模块供测试脚本运行模块进行操作命令的执行,并返回命令执行结果。
进一步地,该装置还包括与待测***操作模块连接的集群控制模块,其中:
集群控制模块,用于将待测***中一定包格式的待测集群软件的操作命令输出给测试脚本运行模块;
测试脚本运行模块收集的待测***的所有测试用例脚本包括所有集群软件的测试用例脚本;通过Socket通信模块向待测***发出执行测试用例脚本的操作命令包括所有集群软件执行测试用例脚本的操作命令,以及输出的统计结果包括对所有集群软件统计的测试用例脚本执行的时间和结果。
进一步地,待测集群软件向所述Socket通信模块提供接口,由Socket通信模块调用该接口。
进一步地,Socket通信模块包括Socket服务端和Socket客户端;其中Socket服务端部署在待测***上,Socket客户端部署在该自动测试装置上。
本发明的基于集群架构的测试装置具有模块化划分而灵活扩展移植的特性,体现在扩展或者移植某一模块时,基本不用或很少对其它模块进行修改,从而减少框架应用的复杂度。通过Socket通信方式操作待测***并返回结果的特性,使测试结果可以通过测试脚本检查,从而达到自动化测试的效果。上述优点,使得高可用集群软件版本发布质量提高,并提高了脚本编写效率及测试效率,因而在高可用集群应用***中具有非常广阔的发展前景。
附图说明
图1为现有的手工方式测试高可用集群***的软件测试架构示意图;
图2为本发明的基于集群架构的软件自动测试***实施例的结构示意图。
具体实施方式
以下结合附图和优选实施例对本发明的技术方案进行详细地阐述。应该理解,以下列举的实施例仅用于说明和解释本发明,而不构成对本发明技术方案的限制。
如图1所示,表示了本发明提供的基于集群架构的软件自动测试***实施例的结构,包括:测试装置和待测***,其中测试装置包括依次连接的测试过程记录模块以及测试脚本运行模块,还包括与测试脚本运行模块连接的待测***操作模块以及Socket通信模块,其中:
Socket通信模块,用于作为测试装置的核心,传输操作待测***的命令和接收待测***返回的命令执行结果;
测试脚本运行模块,用于收集待测***的所有测试用例脚本,通过Socket通信模块向待测***发出执行测试用例脚本的操作命令,并统计测试用例脚本执行的时间和结果,将统计结果输出给测试过程记录模块;
待测***操作模块,用于将待测***的操作命令输出给测试脚本运行模块;
测试过程记录模块,用于记录测试步骤以及每个步骤的预期结果,并将预期结果与统计结果相比对,以判断测试用例的正确性。
上述***实施例还包括与待测***操作模块连接的集群控制模块,其中:
集群控制模块,用于将待测***中一定包格式的待测集群软件的操作命令输出给测试脚本运行模块;
测试脚本运行模块收集的待测***的所有测试用例脚本包括所有集群软件的测试用例脚本,通过Socket通信模块向待测***发出执行测试用例脚本的操作命令包括所有集群软件执行测试用例脚本的操作命令,以及输出的统计结果包括对所有集群软件统计的测试用例脚本执行的时间和结果;
待测***,用于作为测试对象通过Socket通信模块供测试脚本运行模块进行操作命令的执行,并返回命令执行结果。
在上述***实施例中提到的Socket通信模块,主要包括Socket服务端和Socket客户端;其中Socket服务端部署在待测试***上,Socket客户端部署在测试装置上。
该Socket通信模块作为此测试装置的核心模块,起到最底层的核心交互作用,因而要求该Socket服务端开机自启动。Socket通信模块主要负责传输执行测试脚本的命令及待测***返回的执行结果,采用一问一答方式来实现。
在上述***实施例中,
由于该测试装置要求对集群软件进行控制,因而需要待测集群软件向Socket通信模块提供接口,由Socket通信模块调用,以便能够操作待测集群软件。
在一个典型的配置环境中,可以采用2台服务器作为待测的集群服务器,1台PC机或服务器作为测试装置,Socket通信模块负责测试装置与待测的集群服务器进行通信,由待测***操作模块负责操作这2台集群服务器,检查其中集群软件的运行结果,由集群控制模块负责对集群软件进行启动、停止等操作,由测试脚本运行模块和测试过程记录模块负责收集该集群软件所有的测试脚本,并执行所有的测试脚本,最后形成测试结果以及统计信息,从而构建出集群软件***的自动化软件测试框架。
本发明与传统的手工高可用集群软件测试相比,这种高可用集群软件自动化测试框架具有高可移植性、高可扩展,以及高测试执行效率等特性。其中,高可移植性的实现方式是指:在这种高可用集群软件自动化测试框架中,待测***操作模块、集群控制模块都是通过封装的方式实现,当测试脚本需要在不同的***之间进行移植时,只需要通过修改装置的模块底层实现,不需要修改任何测试脚本本身,从而提高了可移植性。高可扩展的实现方式是指:在这种高可用集群软件自动化测试框架中,待测***操作模块、集群控制模块中是通过对象的方式实现,添加任何模块、以及为模块添加功能,都不会对原来测试脚本有任何影响。
本发明的高可用集群软件自动化测试框架所具有的上述优点,使得其提高了高可用集群软件版本发布质量,提高了当前手工测试的效率以及脚本开发效率,因而具有非常广阔的发展前景。

Claims (8)

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客户端部署在所述自动测试装置上。
CN201310395655.9A 2013-09-03 2013-09-03 一种基于集群架构的软件自动测试装置及*** Active CN103455423B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310395655.9A CN103455423B (zh) 2013-09-03 2013-09-03 一种基于集群架构的软件自动测试装置及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310395655.9A CN103455423B (zh) 2013-09-03 2013-09-03 一种基于集群架构的软件自动测试装置及***

Publications (2)

Publication Number Publication Date
CN103455423A true CN103455423A (zh) 2013-12-18
CN103455423B CN103455423B (zh) 2016-01-13

Family

ID=49737823

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310395655.9A Active CN103455423B (zh) 2013-09-03 2013-09-03 一种基于集群架构的软件自动测试装置及***

Country Status (1)

Country Link
CN (1) CN103455423B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795711A (zh) * 2014-01-10 2014-05-14 宁波金信通讯技术有限公司 基于手机客户端的自动化测试方法及***
CN104035872A (zh) * 2014-06-27 2014-09-10 浪潮(北京)电子信息产业有限公司 一种集群软件测试的方法及装置
CN105205003A (zh) * 2015-10-28 2015-12-30 努比亚技术有限公司 一种基于集群化***的自动化测试方法和装置
CN105824748A (zh) * 2015-01-22 2016-08-03 国际商业机器公司 用于确定测试用例效率的方法和***
CN107273299A (zh) * 2017-07-07 2017-10-20 广东中星电子有限公司 软件测试装置、软件测试平台及方法
CN107332897A (zh) * 2017-06-26 2017-11-07 武汉精测电子技术股份有限公司 一种自动光学检测***软体的管理***、方法及装置
CN107622013A (zh) * 2017-09-21 2018-01-23 北京东土科技股份有限公司 一种分布式***测试方法及装置
CN109086218A (zh) * 2018-11-09 2018-12-25 郑州云海信息技术有限公司 一种基于蚁群算法的自动化测试方法,***及测试终端
CN109933519A (zh) * 2019-01-22 2019-06-25 泰康保险集团股份有限公司 自动化测试方法、装置、***、介质和电子设备
CN111240749A (zh) * 2018-11-28 2020-06-05 ***通信集团浙江有限公司 一种集群***中实例的挂起控制方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100146337A1 (en) * 2008-12-10 2010-06-10 Airbus Operations Sas Method and device for detecting non-regression of an input/output system in a simulation environment
CN101933001A (zh) * 2008-01-31 2010-12-29 雅虎公司 在集群***中执行软件性能测试作业
CN102141962A (zh) * 2011-04-07 2011-08-03 北京航空航天大学 一种安全性分布式测试框架***及其测试方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101933001A (zh) * 2008-01-31 2010-12-29 雅虎公司 在集群***中执行软件性能测试作业
US20100146337A1 (en) * 2008-12-10 2010-06-10 Airbus Operations Sas Method and device for detecting non-regression of an input/output system in a simulation environment
CN102141962A (zh) * 2011-04-07 2011-08-03 北京航空航天大学 一种安全性分布式测试框架***及其测试方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
郑珂等: "《Java程序设计》", 31 July 2012, 中国电力出版社 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103795711A (zh) * 2014-01-10 2014-05-14 宁波金信通讯技术有限公司 基于手机客户端的自动化测试方法及***
CN104035872B (zh) * 2014-06-27 2017-01-11 浪潮(北京)电子信息产业有限公司 一种集群软件测试的方法及装置
CN104035872A (zh) * 2014-06-27 2014-09-10 浪潮(北京)电子信息产业有限公司 一种集群软件测试的方法及装置
CN105824748B (zh) * 2015-01-22 2018-06-08 国际商业机器公司 用于确定测试用例效率的方法和***
CN105824748A (zh) * 2015-01-22 2016-08-03 国际商业机器公司 用于确定测试用例效率的方法和***
US10120783B2 (en) 2015-01-22 2018-11-06 International Business Machines Corporation Determining test case efficiency
CN105205003A (zh) * 2015-10-28 2015-12-30 努比亚技术有限公司 一种基于集群化***的自动化测试方法和装置
CN107332897A (zh) * 2017-06-26 2017-11-07 武汉精测电子技术股份有限公司 一种自动光学检测***软体的管理***、方法及装置
CN107273299A (zh) * 2017-07-07 2017-10-20 广东中星电子有限公司 软件测试装置、软件测试平台及方法
CN107622013A (zh) * 2017-09-21 2018-01-23 北京东土科技股份有限公司 一种分布式***测试方法及装置
CN107622013B (zh) * 2017-09-21 2020-07-14 北京东土科技股份有限公司 一种分布式***测试方法及装置
CN109086218A (zh) * 2018-11-09 2018-12-25 郑州云海信息技术有限公司 一种基于蚁群算法的自动化测试方法,***及测试终端
CN109086218B (zh) * 2018-11-09 2021-09-28 郑州云海信息技术有限公司 一种基于蚁群算法的自动化测试方法,***及测试终端
CN111240749A (zh) * 2018-11-28 2020-06-05 ***通信集团浙江有限公司 一种集群***中实例的挂起控制方法及装置
CN111240749B (zh) * 2018-11-28 2023-07-21 ***通信集团浙江有限公司 一种集群***中实例的挂起控制方法、装置、设备、存储介质
CN109933519A (zh) * 2019-01-22 2019-06-25 泰康保险集团股份有限公司 自动化测试方法、装置、***、介质和电子设备

Also Published As

Publication number Publication date
CN103455423B (zh) 2016-01-13

Similar Documents

Publication Publication Date Title
CN103455423B (zh) 一种基于集群架构的软件自动测试装置及***
Lin et al. Scalable graph traversal on sunway taihulight with ten million cores
WO2021155667A1 (zh) 模型训练方法、装置及集群***
CN111767031B (zh) 一种基于仿真的核电工业互联网实验床
CN104025053A (zh) 使用集体操作建模的消息传递接口调谐
CN105740142A (zh) Ssr集中管理平台压力测试管理***
CN110008005B (zh) 基于云平台的电网通信资源虚拟机迁移***及方法
CN105468756A (zh) 一种海量数据处理***的设计和实现方法
CN109271256A (zh) 一种基于分布式部署的云资源管理和监控***及方法
Li et al. Microservice migration using strangler fig pattern: A case study on the green button system
CN103685564A (zh) 引入插件化应用能力层的行业应用在线运营云平台架构
CN111813419A (zh) 一种基于kubernetes声明式管理裸机生命周期的方法
CN112486809A (zh) 一种基于白盒交换机的自动化测试方法、***及设备
CN109766488B (zh) 一种基于Scrapy的数据采集方法
CN103927244A (zh) 一种基于动态代理实现的插件调度过程监控的方法
CN109885493A (zh) 一种基于Android平台和Java反射的自动化混合框架
CN102636998A (zh) 一套用于空间环境模拟器抽气的自动控制方法及自动控制***
CN104102529A (zh) 一种基于有限状态机的存储虚拟化管理***及方法
CN107545007A (zh) 电力大数据快速检索引擎
CN113031969B (zh) 设备部署巡检方法、装置、计算机设备及存储介质
CN202364256U (zh) 一种网络信息发布***、服务器
CN105652813A (zh) 一种基于AM335X处理器构建嵌入式实时EtherCAT主站的方法
CN105653292A (zh) 一种在集中式监控***中自定义统计项表达式的方法
Liu et al. Survey of big data platform based on cloud computing container technology
Xu et al. Towards high-speed real-time http traffic analysis on the tilera many-core platform

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180821

Address after: 200436 Room 411, No. three, JIANGCHANG Road, Jingan District, Shanghai, 411

Patentee after: Shanghai wave Cloud Computing Service Co., Ltd.

Address before: 100085 floor 1, C 2-1, No. 2, Shang Di Road, Haidian District, Beijing.

Patentee before: Electronic information industry Co.,Ltd of the tide (Beijing)

TR01 Transfer of patent right