基于多版本操作系统测试方法、系统及设备和存储介质与流程

文档序号:14870264发布日期:2018-07-06 22:23阅读:154来源:国知局

本发明涉及操作系统技术领域,更具体地说,涉及一种基于多版本操作系统测试方法、系统及设备和一种计算机可读存储介质。



背景技术:

linux操作系统存在多种发行版本,常见的包括:ubuntu、centos、redhat、suse、linuxmnit等,并且每种发行版本一般也会有多个子版本,例如ubuntu常见子版本有ubuntu14.04和ubuntu16.04,centos常见子版本有centos5、centos6、centos7。

对于多种发行版本软件兼容性的测试,现有技术主要采用在主机上安装虚拟机,使用不同版本操作系统虚拟机进行测试的方式,这种方式相对较为高效,但是某些硬件设备例如大部分商用版的gpu卡,在虚拟机上不能正常使用,导致测试不能进行。并且一个主机上能够运行的虚拟机个数依赖于主机硬件性能,虚拟机会独占主机cpu、内存及存储设备,损耗部分主机性能,导致启动及停止速度慢,达不到高效的测试环境搭建。同时,部署虚拟机的方式需要复杂的操作系统安装和维护工作,使得linux软件系统兼容性测试需要投入很多的人力物力资源。

因此,如何在不损耗主机性能的前提下进行多版本操作系统上的测试是本领域技术人员需要解决的问题。



技术实现要素:

本发明的目的在于提供一种基于多版本操作系统测试方法、系统及设备和一种计算机可读存储介质,在不损耗主机性能的前提下,实现了多版本操作系统上基于多版本操作系统的测试。

为实现上述目的,本发明提供了一种基于多版本操作系统测试方法,包括:

配置待测试操作系统发行版本;

根据所述发行版本的子版本个数,创建对应数量的容器组,其中,每个所述容器组至少包括一个容器;

在所述容器中安装测试软件,并进行测试。

其中,在所述容器中安装测试软件之前,还包括:

部署所述容器对应的所述发行版本的子版本的基础环境。

其中,还包括:

记录所述测试软件的安装过程日志。

其中,所述配置待测试操作系统发行版本之后,还包括:

创建所述发行版本的模板镜像,并对所述模板镜像进行配置。

其中,所述创建所述发行版本的模板镜像,包括:

其中,所述创建对应数量的容器组之后,还包括:

在所述容器中配置所述发行版本的基础依赖包。

为实现上述目的,本发明提供了一种基于多版本操作系统测试系统,包括:

配置模块,用于配置待测试操作系统发行版本;

创建容器模块,用于根据所述发行版本的子版本个数,创建对应数量的容器组,其中,每个所述容器组至少包括一个容器;

测试模块,用于在所述容器中安装测试软件,并进行测试。

其中,还包括:

创建镜像模块,用于创建所述发行版本的模板镜像,并对所述模板镜像进行配置。

为实现上述目的,本发明提供了一种基于多版本操作系统测试设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述测试方法的步骤。

为实现上述目的,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述测试方法。

通过以上方案可知,本发明提供的一种基于多版本操作系统测试方法包括:配置待测试操作系统发行版本;根据所述发行版本的子版本个数,创建对应数量的容器组,其中,每个所述容器组至少包括一个容器;在所述容器中安装测试软件,并进行测试。

本发明提供的基于多版本操作系统测试方法,自动创建不同发行版本的操作系统,并根据发行版本的子版本个数创建容器,利用容器对主机运行环境进行隔离,达到一个主机上创建出多种操作系统的虚拟环境,虚拟出多个节点,自动化部署测试软件完成测试。由此可见,本发明提供的基于多版本操作系统测试方法,利用容器在不损耗主机性能的前提下,实现了多版本操作系统上的测试。本发明还公开了一种基于多版本操作系统测试系统及设备和一种计算机可读存储介质,同样能实现上述技术效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例公开的一种基于多版本操作系统测试方法的流程图;

图2为本发明实施例公开的另一种基于多版本操作系统测试方法的流程图;

图3为本发明实施例公开的一种基于多版本操作系统测试系统的结构图;

图4为本发明实施例公开的一种基于多版本操作系统测试设备的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例公开了一种基于多版本操作系统测试方法,在不损耗主机性能的前提下,实现了多版本操作系统上的测试。

参见图1,本发明实施例公开的一种基于多版本操作系统测试方法的流程图,如图1所示,包括:

s101:配置待测试操作系统发行版本;

例如,可以在images_list文件中编写如下内容:

centos6.7;

centos7.4.1708;

ubuntu16.04;

ubuntu14.04;

上述例子中,表明待测试操作系统的发行版本为centos和ubuntu,且每个发行版本具体两个子版本。

可以理解的是,在s101的基础上,还可以包括创建所述发行版本的模板镜像,并对所述模板镜像进行配置的步骤。具体的,dockerhub上存在所有linux发行版本的基础镜像,只需要通过网络从dockerhub上下载基础镜像即可。测试软件的安装需要在基础的镜像上安装一系列的依赖包,针对多容器达到多节点的测试情景,制作一个模板镜像然后再创建容器能够达到节省时间的效果。

dockerfile是模板化创建镜像的工具,使用dockerfile能够高效的、可重复的创建镜像。利用dockerfile工具从images_list文件中,读取待测试系统的列表,使用dockerfile创建测试镜像,并且配置一些基本的依赖包,例如:yum源、sshd、apt-get源、创建用户、配置用户密码等。

s102:根据所述发行版本的子版本个数,创建对应数量的容器组,其中,每个所述容器组至少包括一个容器;

此处不对每个容器组内的具体容器数量进行限定,一般为1个,即每个发行版本的每个子版本需对应一个容器。

具体的实现代码例如:

s103:在所述容器中安装测试软件,并进行测试。

在此步骤之前,还还包括部署所述容器对应的所述发行版本的子版本的基础环境的步骤。例如配置主机名、集群用户管理、配置集群共享目录、配置容器ip等。

此处不对测试的具体类型进行限定,本领域技术人员可以灵活选择,也就是说,本发明实施例提供的基于多版本操作系统测试方法可以应用于多种测试场景,例如系统兼容性测试、软件最大支持节点数测试、软件稳定性测试、可移植性、高负载测试等。

可以理解的是,在安装测试软件时,还可以记录所述测试软件的安装过程日志。

具体的实现代码如下:

本发明实施例提供的基于多版本操作系统测试方法,自动创建不同发行版本的操作系统,并根据发行版本的子版本个数创建容器,利用容器对主机运行环境进行隔离,达到一个主机上创建出多种操作系统的虚拟环境,虚拟出多个节点,自动化部署测试软件完成测试。由此可见,本发明实施例提供的基于多版本操作系统测试方法,利用容器在不损耗主机性能的前提下,实现了多版本操作系统上的测试。

本发明实施例公开了一种基于多版本操作系统测试方法,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:

参见图2,本发明实施例提供的另一种基于多版本操作系统测试方法的流程图,如图2所示,包括:

s211:配置待测试操作系统发行版本;

s212:创建所述发行版本的模板镜像,并对所述模板镜像进行配置;

s221:根据所述发行版本的子版本个数,创建对应数量的容器组,其中,每个所述容器组至少包括一个容器;

s222:在所述容器中配置所述发行版本的基础依赖包;

s231:部署所述容器对应的所述发行版本的子版本的基础环境;

s232:在所述容器中安装测试软件,记录所述测试软件的安装过程日志并进行测试。

下面对本发明实施例提供的一种基于多版本操作系统测试系统进行介绍,下文描述的一种基于多版本操作系统测试系统与上文描述的一种基于多版本操作系统测试方法可以相互参照。

参见图3,本发明实施例提供的一种基于多版本操作系统测试系统的结构图,如图3所示,包括:

配置模块301,用于配置待测试操作系统发行版本;

创建容器模块302,用于根据所述发行版本的子版本个数,创建对应数量的容器组,其中,每个所述容器组至少包括一个容器;

测试模块303,用于在所述容器中安装测试软件,并进行测试。

本发明实施例提供的基于多版本操作系统测试系统,自动创建不同发行版本的操作系统,并根据发行版本的子版本个数创建容器,利用容器对主机运行环境进行隔离,达到一个主机上创建出多种操作系统的虚拟环境,虚拟出多个节点,自动化部署测试软件完成测试。由此可见,本发明实施例提供的基于多版本操作系统测试系统,利用容器在不损耗主机性能的前提下,实现了多版本操作系统上的测试。

在上述实施例的基础上,作为优选实施方式,还包括:

创建镜像模块,用于创建所述发行版本的模板镜像,并对所述模板镜像进行配置。

在上述实施例的基础上,作为优选实施方式,所述创建镜像模块具体为利用dockerfile工具从dockerhub中下载所述发行版本的模板镜像,并对所述模板镜像进行配置的模块。

在上述实施例的基础上,作为优选实施方式,在所述容器中安装测试软件之前,还包括:

部署模块,用于部署所述容器对应的所述发行版本的子版本的基础环境。

在上述实施例的基础上,作为优选实施方式,还包括:

记录模块,用于记录所述测试软件的安装过程日志。

在上述实施例的基础上,作为优选实施方式,还包括:

配置依赖包模块,用于在所述容器中配置所述发行版本的基础依赖包。

本申请还提供了一种基于多版本操作系统测试设备,参见图4,本发明实施例提供的一种基于多版本操作系统测试设备的结构图,如图4所示,包括:

存储器401,用于存储计算机程序;

处理器402,用于执行所述计算机程序时可以实现上述实施例所提供的步骤。当然所述测试设备还可以包括各种网络接口,电源等组件。

本发明实施例提供的基于多版本操作系统测试设备,自动创建不同发行版本的操作系统,并根据发行版本的子版本个数创建容器,利用容器对主机运行环境进行隔离,达到一个主机上创建出多种操作系统的虚拟环境,虚拟出多个节点,自动化部署测试软件完成测试。由此可见,本发明实施例提供的基于多版本操作系统测试设备,利用容器在不损耗主机性能的前提下,实现了多版本操作系统上的测试。

本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。

对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1