CN105117346A - 虚拟化平台的分布式系统自动化测试方法及系统 - Google Patents
虚拟化平台的分布式系统自动化测试方法及系统 Download PDFInfo
- Publication number
- CN105117346A CN105117346A CN201510616267.8A CN201510616267A CN105117346A CN 105117346 A CN105117346 A CN 105117346A CN 201510616267 A CN201510616267 A CN 201510616267A CN 105117346 A CN105117346 A CN 105117346A
- Authority
- CN
- China
- Prior art keywords
- distributed system
- virtual machine
- test
- virtual
- virtual platform
- 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.)
- Pending
Links
Abstract
本发明提供一种虚拟化平台的分布式系统自动化测试方法,包括:创建多台虚拟机;输出第一调用指令以调用虚拟化平台的管理接口,对每一虚拟机执行快照操作;根据用户需求对每一虚拟机执行对应的分布式系统的环境部署操作;运行指定的自动化测试用例,并记录测试结果;判断是否需循环执行自动化测试用例的测试;若是,表示循环测试未结束,输出第二调用指令以重新调用虚拟化平台的管理接口,对每一虚拟机执行恢复快照操作,返回利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境步骤;若否,表示循环测试结束,结束进程。本发明提升了实体机的资源利用率和研发效率,当出现故障时可迅速恢复初始环境。
Description
技术领域
本发明属于分布式系统软件测试和管理技术领域,涉及一种测试方法及系统,特别是涉及一种虚拟化平台的分布式系统自动化测试方法及系统。
背景技术
随着大数据时代的来临,越来越多的分布式系统应运而生。分布式系统比传统的单机系统通常来说会更加复杂,而测试分布式系统的功能也是一项巨大的工程。常见的测试方法有以下几种:
第一种测试方法:该测试方法开发一个web程序,分布式系统的功能从web端测试。Web端的测试可以覆盖大部分的分布式存储系统的功能,但仅通过web去测试还是不能全部覆盖所有功能。比如当需要观察web所在服务器节点关机后分布式系统的表现时,通常会因为连不上web而无法获取分布式系统的状态。如果还是全人工操作web执行测试用例,效率会非常低下。
第二种测试方法:该测试方法引入自动化测试框架(自动化测试框架是由一个或多个自动化测试基础模块、自动化测试管理模块、自动化测试统计模:块等组成的工具集合,比如PhoenixFramework,robot,STAF),编写测试用例程序,放入自动化测试框架执行。由于测试用例是自动执行的,比人工操作web的速度肯定快,只要测试用例程序正确,就不会出现人工操作时的误操作。显然这种方法较上一种方法效率高很多。但是,如果在循环反复的测试过程中,出现系统故障,或者程序不可修复的错误时,此时需要人工去将整个分布式存储系统清理干净,重新部署。
所以从以上描述可以看出现有的测试方法中存在以下几种缺陷:
1,需要人工测试,执行效率低下;
2,如果在循环执行测试时,出现系统故障或者程序不可修复的错误时,需要人工清理分布式系统,并将其重新部署。
因此,如何提供虚拟化平台的分布式系统自动化测试方法及系统,以解决现有技术中的由于人工测试导致执行效率低下,且如果在循环执行测试时,出现系统故障或者程序不可修复的错误时,需要人工清理分布式系统,并将其重新部署等种种缺陷,实已成为本领域从业者亟待解决的技术问题。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供虚拟化平台的分布式系统自动化测试方法及系统,用于解决现有技术中由于人工测试导致执行效率低下,且如果在循环执行测试时,出现系统故障或者程序不可修复的错误时,需要人工清理分布式系统,并将其重新部署的问题。
为实现上述目的及其他相关目的,本发明一方面提供一种虚拟化平台的分布式系统自动化测试方法,所述虚拟化平台上存储有自动化测试用例,所述虚拟化平台的分布式系统自动化测试方法包括以下步骤:在所述虚拟化平台中创建搭建所述分布式系统的多台虚拟机;输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作;利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境;根据用户需求对每一所述虚拟机执行对应的分布式系统的环境部署操作;运行指定的自动化测试用例,并记录测试结果;判断是否需循环执行自动化测试用例的测试;若是,表示循环测试未结束,继续执行下一步骤;若否,表示循环测试结束,结束进程;输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作,返回利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境的步骤以继续执行自动化测试用例的测试。
可选地,所述输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作,继续执行自动化测试用例的测试操作的步骤中执行恢复快照操作是指将每一所述虚拟机恢复至所述分布式系统的初始环境。
可选地,所述自动化测试用例包括快照管理类测试用例、分布式系统功能测试用例、及配置测试用例。
本发明另一方面还提供一种虚拟化平台的分布式系统自动化测试方法,所述虚拟化平台上存储有自动化测试用例,所述虚拟化平台上存储有自动化测试用例包括以下步骤:在所述虚拟化平台中创建搭建所述分布式系统的多台虚拟机;更新每一所述虚拟机中分布式系统软件的软件版本;输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作;利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境;根据用户需求对每一所述虚拟机执行对应的分布式系统的环境部署操作;运行指定的自动化测试用例,并记录测试结果;判断是否继续执行自动化测试用例的测试;若是,表示循环测试未结束,继续执行下一步骤;若否,表示循环测试结束,结束进程;输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作,返回利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境的步骤以继续执行自动化测试用例的测试。
可选地,所述虚拟化平台的分布式系统自动化测试方法还包括判断每一所述虚拟机中分布式系统软件的软件版本是否需要更新,若是,则执行更新每一所述虚拟机中分布式系统软件的软件版本的步骤;若否,则执行输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作的步骤。
可选地,判断是否继续执行自动化测试用例的测试的判断依据为判断是否存储在所述分布式系统上的所有自动化测试用例都成功通过测试和/或判断所述分布式系统是否出现系统故障。
本发明又一方面还提供一种虚拟化平台的分布式系统自动化测试系统,所述虚拟化平台上存储有自动化测试用例,=所述虚拟化平台的分布式系统自动化测试系统包括:创建模块,用于在所述虚拟化平台中创建搭建所述分布式系统的多台虚拟机;第一控制模块,与所述创建模块连接,用于输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作;配置模块,与所述第一控制模块连接,用于利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境;操作模块,与所述创建模块、第一控制模块、配置模块连接,用于根据用户需求对每一所述虚拟机执行对应的分布式系统的环境部署操作;运行模块,与所述操作模块连接,用于运行指定的自动化测试用例,并记录测试结果;判断模块,与所述运行模块连接,用于判断是否需循环执行自动化测试用例的测试;若是,表示循环测试未结束,调用用于输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作的第二控制模块,并继续调用用于利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境的配置模块;若否,表示循环测试结束,调用用于停止所述虚拟化平台的分布式系统自动化测试系统运行的终止模块。
可选地,所述第一控制模块用于执行恢复快照操作具体是用于将每一所述虚拟机恢复至所述分布式系统的初始环境。
本发明最后一方面提供一种电子设备,所述电子设备包括:虚拟化平台的分布式系统自动化测试系统。
如上所述,本发明的虚拟化平台的分布式系统自动化测试方法及系统,具有以下有益效果:
1)通过虚拟机代替实体机进行分布式系统的测试,一套虚拟化平台的实体机仅仅可以创建几十个虚拟机,为企业购买研发的实体机缩减了几十倍的经济成本,同时也提升了实体机的资源利用率。
2)引入自动化测试框架,提升了测试的效率,更加快速地反应分布式系统的稳定性,从而提升了研发的效率。
3)当出现系统故障时,可以利用恢复快照的方式,迅速地恢复到分布式系统的初始环境,从而不影响下一次测试。
4)可以进行更加全面的自动化测试,并能全自动地循环反复地进行自动化测试。
附图说明
图1显示为本发明的一种虚拟化平台的分布式系统自动化测试方法的流程示意图。
图2显示为本发明的另一种虚拟化平台的分布式系统自动化测试方法的流程示意图。
图3显示为本发明的虚拟化平台的分布式系统自动化测试系统的原理结构示意图。
图4显示为本发明的电子设备的原理结构示意图。
元件标号说明
1电子设备
10虚拟化平台的分布式
系统自动化测试系统
101创建模块
102第一控制模块
103配置模块
104操作模块
105运行模块
106判断模块
107第二控制模块
108终止模块
109更新模块
S1~S7步骤
S1’~S9’步骤
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
实施例一
本实施例提供一种虚拟化平台的分布式系统自动化测试方法,所述虚拟化平台上存储有自动化测试用例。请参阅图1,显示为一种虚拟化平台的分布式系统自动化测试方法的流程示意图。如图1所示,所述虚拟化平台的分布式系统自动化测试方法包括以下步骤:
S1,在所述虚拟化平台中创建搭建所述分布式系统的多台虚拟机。其中所述虚拟机是一种严密隔离的软件容器,它包括多个客户机操作系统(guestOS)以及运行在每个客户机操作系统上的多个应用程序,可具有不同操作系统的多个虚拟机在同一物理机上独立并行运行,从而在多台虚拟机之间实现单台物理机的资源共享。。本实施例的虚拟机是只虚拟化平台中创建的虚拟机。
S2,输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作。在本实施例中,所示虚拟机的快照操作是指在支持快照的虚拟化平台上记录执行快照的时间点所述虚拟机的整个运行状态。
S3,利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境。在本实施例中,所述网络属性包括网络IP、网关等。
S4,根据用户需求对每一所述虚拟机执行对应的分布式系统的环境部署操作。由于所述分布式系统是由通信网络互联的多处理机体系结构上执行任务的系统,它包括分布式操作系统、分布式程序设计语言及其编译系统、分布式文件系统和分布式数据库系统等,所以对应的分布式系统的环境部署操作的是指部署分布式操作系统、分布式程序设计语言及其编译系统、分布式文件系统和分布式数据库系统等的操作。
S5,运行指定的自动化测试用例,并记录测试结果。在本实施例中,所述自动化测试用例包括快照管理类测试用例、分布式系统功能测试用例、及配置测试用例。其中,所述快照管理类测试用例第一次运行时执行快照,下一次就执行恢复快照。所述分布式系统功能测试用例包含所述分布式系统上各个模块上的测试用例,该测试用例可以测试一个或多个模块功能用例,也就是说在本实施例中可以选择测试部分模块功能用例或全部模块功能用例,模块功能是否测试全面,取决于模块功能用例是否完整。所述配置测试用例包括网络配置测试用例,更新软件包测试用例,循环控制测试用例等。所述网络配置测试用例用于确定是否每个虚拟机网络配置良好以便连接至相应的网络设备。由于分布式系统的软件版本会不断出现新的版本,所述更新软件包测试用例需测试是否有更新的软件版本。所述循环控制测试用例用于在循环执行测试以确定分布式系统的软件稳定性。
S6,判断是否需循环执行自动化测试用例的测试;若是,表示循环测试未结束,继续执行下一步骤,即步骤S7;若否,表示循环测试结束,结束进程。在本实施例中,判断是否继续执行自动化测试用例的测试的判断依据为判断是否存储在所述分布式系统上的所有自动化测试用例都成功通过测试和/或判断所述分布式系统是否出现系统故障。
S7,输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作,返回步骤S3,即利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境。在本实施例中,恢复快照是指令所述虚拟机恢复至指定快照的时间点的运行状态,也就是说,所述恢复快照操作是指令所述虚拟机恢复至所述步骤S3中配置的所述分布式系统的初始环境。继续执行自动化测试用例的测试操作是指继续运行自动化测试用例,记录测试结果直至循环结束。本实施例采用循环处理可以尽早发现分布式系统中软件问题,并在问题处理完成后快速验证。
本实施例所述的虚拟化平台的分布式系统自动化测试方法具有以下几个有益效果:
1)通过虚拟机代替实体机进行分布式系统的测试,一套虚拟化平台的实体机仅仅可以创建几十个虚拟机,为企业购买研发的实体机缩减了几十倍的经济成本,同时也提升了实体机的资源利用率。
2)引入自动化测试框架,提升了测试的效率,更加快速地反应分布式系统的稳定性,从而提升了研发的效率。
3)当出现系统故障时,可以利用恢复快照的方式,迅速地恢复到分布式系统的初始环境,从而不影响下一次测试。
4)可以进行更加全面的自动化测试,并能全自动地循环反复地进行自动化测试。
实施例二
本实施例提供一种虚拟化平台的分布式系统自动化测试方法,所述虚拟化平台上存储有自动化测试用例。请参阅图2,显示为另一种虚拟化平台的分布式系统自动化测试方法的流程示意图。如图2所示,所述虚拟化平台的分布式系统自动化测试方法包括以下步骤:
S1’,在所述虚拟化平台中创建搭建所述分布式系统的多台虚拟机。其中所述虚拟机是一种严密隔离的软件容器,它包括多个客户机操作系统(guestOS)以及运行在每个客户机操作系统上的多个应用程序,可具有不同操作系统的多个虚拟机在同一物理机上独立并行运行,从而在多台虚拟机之间实现单台物理机的资源共享。本实施例的虚拟机是只虚拟化平台中创建的虚拟机。
S2’,检测每一所述虚拟机中分布式系统软件的软件版本以判断判断每一所述虚拟机中分布式系统软件的软件版本是否需要更新,若是,则执行步骤S3’,即执行更新每一所述虚拟机中分布式系统软件的软件版本,之后转入步骤S4’;若否,则直接执行步骤S4’。
S4’,输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作。在本实施例中,所示虚拟机的快照操作是指在支持快照的虚拟化平台上记录执行快照的时间点所述虚拟机的整个运行状态。
S5’,利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境。在本实施例中,所述网络属性包括网络IP、网关等。
S6’,根据用户需求对每一所述虚拟机执行对应的分布式系统的环境部署操作。由于所述分布式系统是由通信网络互联的多处理机体系结构上执行任务的系统,它包括分布式操作系统、分布式程序设计语言及其编译系统、分布式文件系统和分布式数据库系统等,所以对应的分布式系统的环境部署操作的是指部署分布式操作系统、分布式程序设计语言及其编译系统、分布式文件系统和分布式数据库系统等的操作。
S7’,运行指定的自动化测试用例,并记录测试结果。在本实施例中,所述自动化测试用例包括快照管理类测试用例、分布式系统功能测试用例、及配置测试用例。其中,所述快照管理类测试用例第一次运行时执行快照,下一次就执行恢复快照。所述分布式系统功能测试用例包含所述分布式系统上各个模块上的测试用例,该测试用例可以测试一个或多个模块功能用例,也就是说在本实施例中可以选择测试部分模块功能用例或全部模块功能用例,模块功能是否测试全面,取决于模块功能用例是否完整。所述配置测试用例包括网络配置测试用例,更新软件包测试用例,循环控制测试用例等。所述网络配置测试用例用于确定是否每个虚拟机网络配置良好以便连接至相应的网络设备。由于分布式系统的软件版本会不断出现新的版本,所述更新软件包测试用例需测试是否有更新的软件版本。所述循环控制测试用例用于在循环执行测试以确定分布式系统的软件稳定性。
S8’,判断是否需循环执行自动化测试用例的测试;若是,表示循环测试未结束,继续执行下一步骤,即步骤S9’;若否,表示循环测试结束,结束进程。在本实施例中,判断是否继续执行自动化测试用例的测试的判断依据为判断是否存储在所述分布式系统上的所有自动化测试用例都成功通过测试和/或判断所述分布式系统是否出现系统故障。
S9’,输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作,返回步骤S5’,即返回至利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境的步骤。在本实施例中,恢复快照是指令所述虚拟机恢复至指定快照的时间点的运行状态,也就是说,所述恢复快照操作是指令所述虚拟机恢复至所述步骤S5’中配置的所述分布式系统的初始环境。继续执行自动化测试用例的测试操作是指继续运行自动化测试用例,记录测试结果直至循环结束。本实施例采用循环处理可以尽早发现分布式系统中软件问题,并在问题处理完成后快速验证。
本实施例所述的虚拟化平台的分布式系统自动化测试方法具有以下几个有益效果:
1)通过虚拟机代替实体机进行分布式系统的测试,一套虚拟化平台的实体机仅仅可以创建几十个虚拟机,为企业购买研发的实体机缩减了几十倍的经济成本,同时也提升了实体机的资源利用率。
2)引入自动化测试框架,提升了测试的效率,更加快速地反应分布式系统的稳定性,从而提升了研发的效率。
3)当出现系统故障时,可以利用恢复快照的方式,迅速地恢复到分布式系统的初始环境,从而不影响下一次测试。
4)可以进行更加全面的自动化测试,并能全自动地循环反复地进行自动化测试。
实施例三
本实施例所述的虚拟化平台的分布式系统自动化测试系统10,所述虚拟化平台上存储有自动化测试用例。请参阅图3,显示为虚拟化平台的分布式系统自动化测试系统的原理结构示意图。如图3所示,所述虚拟化平台的分布式系统自动化测试系统10包括创建模块101、第一控制模块102、配置模块103、操作模块104、运行模块105、判断模块106、第二控制模块107、终止模块108、及更新模块109。
所述创建模块101用于在所述虚拟化平台中创建搭建所述分布式系统的多台虚拟机。其中所述虚拟机是一种严密隔离的软件容器,它包括多个客户机操作系统(guestOS)以及运行在每个客户机操作系统上的多个应用程序,可具有不同操作系统的多个虚拟机在同一物理机上独立并行运行,从而在多台虚拟机之间实现单台物理机的资源共享。本实施例的虚拟机是只虚拟化平台中创建的虚拟机。
与所述创建模块101连接的第一控制模块102用于输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作。在本实施例中,所示虚拟机的快照操作是指在支持快照的虚拟化平台上记录执行快照的时间点所述虚拟机的整个运行状态。所述第一控制模块102用于执行恢复快照操作具体是用于将每一所述虚拟机恢复至所述分布式系统的初始环境,。
与所述创建模块101和第一控制模块102连接的配置模块103用于利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境。在本实施例中,所述网络属性包括网络IP、网关等。
与所述第一控制模块102和配置模块103的操作模块104用于根据用户需求对每一所述虚拟机执行对应的分布式系统的环境部署操作。由于所述分布式系统是由通信网络互联的多处理机体系结构上执行任务的系统,它包括分布式操作系统、分布式程序设计语言及其编译系统、分布式文件系统和分布式数据库系统等,所以对应的分布式系统的环境部署操作的是指部署分布式操作系统、分布式程序设计语言及其编译系统、分布式文件系统和分布式数据库系统等的操作。
与所述操作模块104连接的运行模块105用于运行指定的自动化测试用例,并记录测试结果。在本实施例中,所述自动化测试用例包括快照管理类测试用例、分布式系统功能测试用例、及配置测试用例。其中,所述快照管理类测试用例第一次运行时执行快照,下一次就执行恢复快照。所述分布式系统功能测试用例包含所述分布式系统上各个模块上的测试用例,该测试用例可以测试一个或多个模块功能用例,也就是说在本实施例中可以选择测试部分模块功能用例或全部模块功能用例,模块功能是否测试全面,取决于模块功能用例是否完整。所述配置测试用例包括网络配置测试用例,更新软件包测试用例,循环控制测试用例等。所述网络配置测试用例用于确定是否每个虚拟机网络配置良好以便连接至相应的网络设备。由于分布式系统的软件版本会不断出现新的版本,所述更新软件包测试用例需测试是否有更新的软件版本。所述循环控制测试用例用于在循环执行测试以确定分布式系统的软件稳定性。
与所述运行模块105连接的判断模块106用于判断是否需循环执行自动化测试用例的测试;若是,表示循环测试未结束,调用用于输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作的第二控制模块107,并继续调用用于利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境的配置模块103;若否,表示循环测试结束,调用用于停止所述虚拟化平台的分布式系统自动化测试系统10的终止模块108。在本实施例中,所述判断模块106中预存有判断是否继续执行自动化测试用例的测试的判断依据为判断是否存储在所述分布式系统上的所有自动化测试用例都成功通过测试和/或判断所述分布式系统是否出现系统故障。在本实施例中,恢复快照是指令所述虚拟机恢复至指定快照的时间点的运行状态,也就是说,所述恢复快照操作是指令所述虚拟机恢复至所述配置模块103中配置的所述分布式系统的初始环境。继续执行自动化测试用例的测试操作是指继续运行自动化测试用例,记录测试结果直至循环结束。本实施例采用循环处理可以尽早发现分布式系统中软件问题,并在问题处理完成后快速验证。
本实施例中,所述虚拟化平台的分布式系统自动化测试系统10还包括分别与所述创建模块101和所述第一控制模块102连接的更新模块109。所述更新模块109用于检测每一所述虚拟机中分布式系统软件的软件版本以判断判断每一所述虚拟机中分布式系统软件的软件版本是否需要更新,若是,则执行更新每一所述虚拟机中分布式系统软件的软件版本;若否,则调用所述第一控制模块102。
本实施例还提供一种电子设备1,请参阅图4,显示为电子设备的原理结构示意图。如图4所示,所述电子设备1包括上述虚拟化平台的分布式系统自动化测试系统10。
综上所述,本发明所述虚拟化平台的分布式系统自动化测试方法及系统具有以下几个有益效果:
1)通过虚拟机代替实体机进行分布式系统的测试,一套虚拟化平台的实体机仅仅可以创建几十个虚拟机,为企业购买研发的实体机缩减了几十倍的经济成本,同时也提升了实体机的资源利用率。
2)引入自动化测试框架,提升了测试的效率,更加快速地反应分布式系统的稳定性,从而提升了研发的效率。
3)当出现系统故障时,可以利用恢复快照的方式,迅速地恢复到分布式系统的初始环境,从而不影响下一次测试。
4)可以进行更加全面的自动化测试,并能全自动地循环反复地进行自动化测试。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (9)
1.一种虚拟化平台的分布式系统自动化测试方法,所述虚拟化平台上存储有自动化测试用例,其特征在于,所述虚拟化平台的分布式系统自动化测试方法包括以下步骤:
在所述虚拟化平台中创建搭建所述分布式系统的多台虚拟机;
输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作;
利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境;
根据用户需求对每一所述虚拟机执行对应的分布式系统的环境部署操作;
运行指定的自动化测试用例,并记录测试结果;
判断是否需循环执行自动化测试用例的测试;若是,表示循环测试未结束,继续执行下一步骤;若否,表示循环测试结束,结束进程;
输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作,返回利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境的步骤以继续执行自动化测试用例的测试。
2.根据权利要求1所述的虚拟化平台的分布式系统自动化测试方法,其特征在于:所述输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作,继续执行自动化测试用例的测试操作的步骤中执行恢复快照操作是指将每一所述虚拟机恢复至所述分布式系统的初始环境。
3.根据权利要求1所述的虚拟化平台的分布式系统自动化测试方法,其特征在于:所述自动化测试用例包括快照管理类测试用例、分布式系统功能测试用例、及配置测试用例。
4.一种虚拟化平台的分布式系统自动化测试方法,所述虚拟化平台上存储有自动化测试用例,其特征在于,所述虚拟化平台上存储有自动化测试用例包括以下步骤:
在所述虚拟化平台中创建搭建所述分布式系统的多台虚拟机;
更新每一所述虚拟机中分布式系统软件的软件版本;
输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作;
利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境;
根据用户需求对每一所述虚拟机执行对应的分布式系统的环境部署操作;
运行指定的自动化测试用例,并记录测试结果;
判断是否继续执行自动化测试用例的测试;若是,表示循环测试未结束,继续执行下一步骤;若否,表示循环测试结束,结束进程;
输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作,返回利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境的步骤以继续执行自动化测试用例的测试。
5.根据权利要求4所述的虚拟化平台的分布式系统自动化测试方法,其特征在于:所述虚拟化平台的分布式系统自动化测试方法还包括判断每一所述虚拟机中分布式系统软件的软件版本是否需要更新,若是,则执行更新每一所述虚拟机中分布式系统软件的软件版本的步骤;若否,则执行输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作的步骤。
6.根据权利要求4所述的虚拟化平台的分布式系统自动化测试方法,其特征在于:判断是否继续执行自动化测试用例的测试的判断依据为判断是否存储在所述分布式系统上的所有自动化测试用例都成功通过测试和/或判断所述分布式系统是否出现系统故障。
7.一种虚拟化平台的分布式系统自动化测试系统,所述虚拟化平台上存储有自动化测试用例,其特征在于,所述虚拟化平台的分布式系统自动化测试系统包括:
创建模块,用于在所述虚拟化平台中创建搭建所述分布式系统的多台虚拟机;
第一控制模块,与所述创建模块连接,用于输出第一调用指令以调用所述虚拟化平台中用于管理所述虚拟机的管理接口,对每一所述虚拟机执行快照操作;
配置模块,与所述第一控制模块连接,用于利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境;
操作模块,与所述创建模块、第一控制模块、配置模块连接,用于根据用户需求对每一所述虚拟机执行对应的分布式系统的环境部署操作;
运行模块,与所述操作模块连接,用于运行指定的自动化测试用例,并记录测试结果;
判断模块,与所述运行模块连接,用于判断是否需循环执行自动化测试用例的测试;若是,表示循环测试未结束,调用用于输出第二调用指令以重新调用所述虚拟化平台的管理接口,对每一所述虚拟机执行恢复快照操作的第二控制模块,并继续调用用于利用预存网络配置脚本为每一所述虚拟机配置网络属性以配置好的网络属性为所述分布式系统的初始环境的配置模块;若否,表示循环测试结束,调用用于停止所述虚拟化平台的分布式系统自动化测试系统运行的终止模块。
8.根据权利要求7所述的虚拟化平台的分布式系统自动化测试系统,其特征在于:所述第一控制模块用于执行恢复快照操作具体是用于将每一所述虚拟机恢复至所述分布式系统的初始环境。
9.一种电子设备,其特征在于,所述电子设备包括:
如权利要求7-8中任一项所述的虚拟化平台的分布式系统自动化测试系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510616267.8A CN105117346A (zh) | 2015-09-24 | 2015-09-24 | 虚拟化平台的分布式系统自动化测试方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510616267.8A CN105117346A (zh) | 2015-09-24 | 2015-09-24 | 虚拟化平台的分布式系统自动化测试方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105117346A true CN105117346A (zh) | 2015-12-02 |
Family
ID=54665344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510616267.8A Pending CN105117346A (zh) | 2015-09-24 | 2015-09-24 | 虚拟化平台的分布式系统自动化测试方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105117346A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301127A (zh) * | 2017-06-22 | 2017-10-27 | 郑州云海信息技术有限公司 | 一种基于Robot Framework的自动化测试的方法与装置 |
CN107368426A (zh) * | 2017-08-28 | 2017-11-21 | 郑州云海信息技术有限公司 | 一种测试方法及测试装置 |
CN107526661A (zh) * | 2017-08-21 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种虚拟机磁盘性能的测试方法及系统 |
CN107729187A (zh) * | 2017-11-03 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种基于虚拟化平台的测试用例管理容灾方法及系统 |
CN110737590A (zh) * | 2019-09-16 | 2020-01-31 | 上海御渡半导体科技有限公司 | 一种离线调试方法 |
CN110795356A (zh) * | 2019-11-01 | 2020-02-14 | 普元信息技术股份有限公司 | 基于Ansible实现软件一键式部署与自动化测试的系统及其方法 |
CN111045931A (zh) * | 2019-11-22 | 2020-04-21 | 腾讯科技(深圳)有限公司 | 应用程序测试方法、装置、设备及存储介质 |
CN111124867A (zh) * | 2018-10-30 | 2020-05-08 | 中移(苏州)软件技术有限公司 | 一种OpenStack测试方法及装置 |
CN113687834A (zh) * | 2021-10-27 | 2021-11-23 | 深圳华锐金融技术股份有限公司 | 分布式系统节点部署方法、装置、设备及介质 |
CN113760462A (zh) * | 2021-09-07 | 2021-12-07 | 广东电网有限责任公司 | 一种调度自动化系统验证环境的构建方法及装置 |
CN116074227A (zh) * | 2022-11-09 | 2023-05-05 | 国网重庆市电力公司电力科学研究院 | 一种基于虚拟化平台的多电力系统测试方法 |
CN116383090A (zh) * | 2023-05-29 | 2023-07-04 | 麒麟软件有限公司 | 一种用于麒麟系统迁移工具的自动化测试方法及平台 |
CN116074227B (zh) * | 2022-11-09 | 2024-05-14 | 国网重庆市电力公司电力科学研究院 | 一种基于虚拟化平台的多电力系统测试方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102779094A (zh) * | 2012-08-21 | 2012-11-14 | 深圳中兴网信科技有限公司 | 终端和软件异常测试方法 |
CN103365741A (zh) * | 2012-03-30 | 2013-10-23 | 伊姆西公司 | 用于虚拟机集群的快照和恢复的方法和设备 |
US20140109061A1 (en) * | 2012-10-12 | 2014-04-17 | Vmware, Inc. | Test creation with execution |
CN104050015A (zh) * | 2014-06-27 | 2014-09-17 | 国家计算机网络与信息安全管理中心 | 一种虚拟机镜像存储分发系统 |
US20140282433A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Testing functional correctness and idempotence of software automation scripts |
CN104123219A (zh) * | 2013-04-28 | 2014-10-29 | 国际商业机器公司 | 测试软件的方法和设备 |
US20150100830A1 (en) * | 2013-10-04 | 2015-04-09 | Unisys Corporation | Method and system for selecting and executing test scripts |
-
2015
- 2015-09-24 CN CN201510616267.8A patent/CN105117346A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103365741A (zh) * | 2012-03-30 | 2013-10-23 | 伊姆西公司 | 用于虚拟机集群的快照和恢复的方法和设备 |
CN102779094A (zh) * | 2012-08-21 | 2012-11-14 | 深圳中兴网信科技有限公司 | 终端和软件异常测试方法 |
US20140109061A1 (en) * | 2012-10-12 | 2014-04-17 | Vmware, Inc. | Test creation with execution |
US20140282433A1 (en) * | 2013-03-15 | 2014-09-18 | International Business Machines Corporation | Testing functional correctness and idempotence of software automation scripts |
CN104123219A (zh) * | 2013-04-28 | 2014-10-29 | 国际商业机器公司 | 测试软件的方法和设备 |
US20150100830A1 (en) * | 2013-10-04 | 2015-04-09 | Unisys Corporation | Method and system for selecting and executing test scripts |
CN104050015A (zh) * | 2014-06-27 | 2014-09-17 | 国家计算机网络与信息安全管理中心 | 一种虚拟机镜像存储分发系统 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107301127A (zh) * | 2017-06-22 | 2017-10-27 | 郑州云海信息技术有限公司 | 一种基于Robot Framework的自动化测试的方法与装置 |
CN107526661A (zh) * | 2017-08-21 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种虚拟机磁盘性能的测试方法及系统 |
CN107368426A (zh) * | 2017-08-28 | 2017-11-21 | 郑州云海信息技术有限公司 | 一种测试方法及测试装置 |
CN107368426B (zh) * | 2017-08-28 | 2020-12-01 | 苏州浪潮智能科技有限公司 | 一种测试方法及测试装置 |
CN107729187A (zh) * | 2017-11-03 | 2018-02-23 | 郑州云海信息技术有限公司 | 一种基于虚拟化平台的测试用例管理容灾方法及系统 |
CN111124867A (zh) * | 2018-10-30 | 2020-05-08 | 中移(苏州)软件技术有限公司 | 一种OpenStack测试方法及装置 |
CN111124867B (zh) * | 2018-10-30 | 2022-12-16 | 中移(苏州)软件技术有限公司 | 一种OpenStack测试方法及装置 |
CN110737590A (zh) * | 2019-09-16 | 2020-01-31 | 上海御渡半导体科技有限公司 | 一种离线调试方法 |
CN110737590B (zh) * | 2019-09-16 | 2023-11-03 | 上海御渡半导体科技有限公司 | 一种离线调试方法 |
CN110795356A (zh) * | 2019-11-01 | 2020-02-14 | 普元信息技术股份有限公司 | 基于Ansible实现软件一键式部署与自动化测试的系统及其方法 |
CN110795356B (zh) * | 2019-11-01 | 2023-05-12 | 普元信息技术股份有限公司 | 基于Ansible实现软件一键式部署与自动化测试的系统及其方法 |
CN111045931A (zh) * | 2019-11-22 | 2020-04-21 | 腾讯科技(深圳)有限公司 | 应用程序测试方法、装置、设备及存储介质 |
CN113760462A (zh) * | 2021-09-07 | 2021-12-07 | 广东电网有限责任公司 | 一种调度自动化系统验证环境的构建方法及装置 |
CN113760462B (zh) * | 2021-09-07 | 2024-05-07 | 广东电网有限责任公司 | 一种调度自动化系统验证环境的构建方法及装置 |
CN113687834A (zh) * | 2021-10-27 | 2021-11-23 | 深圳华锐金融技术股份有限公司 | 分布式系统节点部署方法、装置、设备及介质 |
CN116074227A (zh) * | 2022-11-09 | 2023-05-05 | 国网重庆市电力公司电力科学研究院 | 一种基于虚拟化平台的多电力系统测试方法 |
CN116074227B (zh) * | 2022-11-09 | 2024-05-14 | 国网重庆市电力公司电力科学研究院 | 一种基于虚拟化平台的多电力系统测试方法 |
CN116383090A (zh) * | 2023-05-29 | 2023-07-04 | 麒麟软件有限公司 | 一种用于麒麟系统迁移工具的自动化测试方法及平台 |
CN116383090B (zh) * | 2023-05-29 | 2023-08-22 | 麒麟软件有限公司 | 一种用于麒麟系统迁移工具的自动化测试方法及平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105117346A (zh) | 虚拟化平台的分布式系统自动化测试方法及系统 | |
CN109933522B (zh) | 一种自动化用例的测试方法、测试系统及存储介质 | |
JP5295269B2 (ja) | コンポーネント・モデル基盤の仮想ソフトウェア・プラットホームを生成する方法、これを利用してソフトウェア・プラットホーム・アーキテクチャを検証する方法及びその装置 | |
Singh et al. | Comparison of different CI/CD tools integrated with cloud platform | |
CN103150249B (zh) | 一种自动化测试的方法和系统 | |
WO2016177124A1 (zh) | 一种实现持续集成测试的方法及装置 | |
US20150100832A1 (en) | Method and system for selecting and executing test scripts | |
CN108737168B (zh) | 一种基于容器的微服务架构应用自动构建方法 | |
US20150100829A1 (en) | Method and system for selecting and executing test scripts | |
Wahbi et al. | Dischoco 2: A platform for distributed constraint reasoning | |
WO2012025773A1 (en) | Infrastructure model generation system and method | |
CN102890652B (zh) | 一种构造测试软件的方法和应用该方法的测试系统 | |
US20170220324A1 (en) | Data communication accelerator system | |
CN105468378A (zh) | 一种软件持续集成配置管理方法和系统 | |
US20150100831A1 (en) | Method and system for selecting and executing test scripts | |
CN111324599B (zh) | 一种区块链实验系统及管理方法 | |
CN109614321A (zh) | 用于ats软件的持续集成和交付的系统 | |
CN103186463B (zh) | 确定软件的测试范围的方法和系统 | |
CN114064152A (zh) | 基于动态加载的嵌入式多核调试系统及其调试方法 | |
CN112231206A (zh) | 应用程序测试的脚本编辑方法、计算机可读存储介质及测试平台 | |
CN113050929A (zh) | 一种基于Hyperledger Fabric的智能合约开发运维一体化平台 | |
US11539612B2 (en) | Testing virtualized network functions | |
CN107124292B (zh) | 一种信息系统运行方式关联关系动态生成方法 | |
CN114996039A (zh) | 基于第三方系统对接的云原生系统联调方法、系统及介质 | |
CN115237441A (zh) | 一种基于云平台的升级测试方法、装置及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 8, second stories, 201112 stories, A-1 units, No. 1188, union airway, Minhang District, Shanghai, Minhang District Applicant after: SHANGHAI EISOO INFORMATION TECHNOLOGY CO., LTD. Address before: 8, second stories, 201112 stories, A-1 units, No. 1188, union airway, Minhang District, Shanghai, Minhang District Applicant before: Shanghai Eisoo Software Co.,Ltd. |
|
COR | Change of bibliographic data | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20151202 |