CN111124867B - 一种OpenStack测试方法及装置 - Google Patents

一种OpenStack测试方法及装置 Download PDF

Info

Publication number
CN111124867B
CN111124867B CN201811276565.7A CN201811276565A CN111124867B CN 111124867 B CN111124867 B CN 111124867B CN 201811276565 A CN201811276565 A CN 201811276565A CN 111124867 B CN111124867 B CN 111124867B
Authority
CN
China
Prior art keywords
types
test
basic resources
cloud platform
openstack
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.)
Active
Application number
CN201811276565.7A
Other languages
English (en)
Other versions
CN111124867A (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.)
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
China Mobile Suzhou Software Technology 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 China Mobile Communications Group Co Ltd, China Mobile Suzhou Software Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201811276565.7A priority Critical patent/CN111124867B/zh
Publication of CN111124867A publication Critical patent/CN111124867A/zh
Application granted granted Critical
Publication of CN111124867B publication Critical patent/CN111124867B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种OpenStack测试方法及装置,用于解决现有技术中的OpenStack测试方法存在测试效率低、测试结果不全面的技术问题。方法包括:确定OpenStack云平台的待测试的功能对应的测试用例;确定该OpenStack云平台实现该功能所需要的N类基础资源,设置该测试用例对应的标记;运行根据该测试用例编写的测试脚本,根据该标记确定该N类基础资源,确定该OpenStack云平台中该N类基础资源中每类基础资源包含的版本类型,根据该N类基础资源中所有基础资源包含的版本类型确定该N类基础资源的所有可能实现方式,根据该N类基础资源的每种可能实现方式对该功能进行自动化测试。

Description

一种OpenStack测试方法及装置
技术领域
本发明涉及计算机技术领域,特别涉及一种OpenStack测试方法及装置。
背景技术
OpenStack是一个开源的云计算管理平台项目,主要用于实现对不同用户、云主机、云镜像、云硬盘、网络等各种基础资源的管理,***复杂、功能繁多。一个可交付的OpenStack云平台需要经过全面的功能测试,在现有技术中,OpenStack测试方法主要有如下两种方式:
第1种,技术人员手动测试,针对发布的功能逐个去测试,记录检查结果。这种方法虽然测试结果比较可靠,但是费时费力,效率低。
第2种,技术人员编写测试脚本,预先配置好测试资源,通过测试脚本调用云平台的应用程序编程接口(Application Programming Interface,API)的方式来执行自动化测试,最终收集测试结果。这种方法虽然可以实现测试过程自动化,节约测试时间,但是一次测试只能指定一个基础资源去测试,无法覆盖全部的测试场景,弹性不足,灵活性差,测试结果不全面。
现有技术中的OpenStack测试方法存在测试效率低、测试结果不全面的技术问题。
发明内容
本发明实施例提供一种OpenStack测试方法及装置,用于解决现有技术中的OpenStack测试方法存在测试效率低、测试结果不全面的技术问题。
第一方面,本发明实施例提供一种OpenStack测试方法,包括:
确定OpenStack云平台的待测试的功能对应的测试用例;
确定所述OpenStack云平台实现所述功能所需要的N类基础资源,设置所述测试用例对应的标记;其中,所述标记用于指示所述N类基础资源,N为正整数;
运行根据所述测试用例编写的测试脚本,根据所述标记确定所述N类基础资源,确定所述OpenStack云平台中所述N类基础资源中每类基础资源包含的版本类型,根据所述N类基础资源中所有基础资源包含的版本类型确定所述N类基础资源的所有可能实现方式,根据所述N类基础资源的每种可能实现方式对所述功能进行自动化测试,获得所述每种可能实现方式对应的测试结果。
本实施方式将待测试的功能对应的测试用例打上标记,用于指示OpenStack云平台实现待测试的功能所需要的N类基础资源,进而在运行测试脚本执行自动化测试的时候,通过标记来判断当前测试场景需要遍历基础资源,保证每个类别资源的所有版本都能被覆盖到,并且在N大于1时还可以实现存在依赖关系的不同类别的基础资源之间能进行组合测试。这样既能避免手动测试带来的耗时耗力问题,还能解决现有自动化测试无法测试全面的问题,提高了测试的覆盖率和全面性,提高了测试质量和测试效率。
可选的,所述N类基础资源包括用户权限、操作***镜像、虚拟机模板规格、网络、宿主机、云硬盘中的至少一类。
通过本实施方式可以对用户权限、操作***镜像、虚拟机模板规格、网络、宿主机、云硬盘中的至少一类的基础资源遍历地进行自动化测试,在避免手动测试带来的耗时耗力问题的同时,还能解决现有自动化测试无法测试全面的问题,提高了测试的覆盖率和全面性,提高了测试质量和测试效率。
可选的,所述测试用例包含测试前提;在根据所述标记确定所述N类基础资源之前,还包括:
检测所述OpenStack云平台的配置和/或资源是否满足所述测试前提;
如果满足则继续;否则,确定所述测试用例执行失败并打印日志。
通过本实施方式,在对基础资源遍历地进行自动化测试之前,需要保证OpenStack云平台的配置和/或资源满足测试前提,提高了OpenStack测试的可靠性。
可选的,在运行根据所述测试用例编写的测试脚本之前,还包括:
远程登陆到所述OpenStack云平台的控制节点;
运行根据所述测试用例编写的测试脚本,具体包括:
在所述控制节点构建容器,在所述容器中运行所述根据所述测试用例编写的测试脚本。
本实施方式通过控制节点构建容器,在容器中运行测试脚本,以避免对OpenStack云平台产生不良影响,提高了用户体验。
可选的,在运行根据所述测试用例编写的测试脚本之前,还包括:
通过所述OpenStack云平台的客户端获取所述OpenStack云平台的资源信息,其中所述资源信息包括所述OpenStack云平台中各类基础资源的版本类型;
将所述资源信息重定向到指定文件中作为所述测试脚本的资源配置文件;
所述确定所述OpenStack云平台中所述N类基础资源中每类基础资源包含的版本类型,包括:
从所述资源配置文件中获取所述N类基础资源中每类基础资源对应的版本类型。
通过本实施方式,可进一步提高测试质量和测试效率。
第二方面,本发明实施例提供一种OpenStack测试装置,包括:
确定单元,用于确定OpenStack云平台的待测试的功能对应的测试用例;
设置单元,用于确定所述OpenStack云平台实现所述功能所需要的N类基础资源,设置所述测试用例对应的标记;其中,所述标记用于指示所述N类基础资源,N为正整数;
处理单元,用于运行根据所述测试用例编写的测试脚本,根据所述标记确定所述N类基础资源,确定所述OpenStack云平台中所述N类基础资源中每类基础资源包含的版本类型,根据所述N类基础资源中所有基础资源包含的版本类型确定所述N类基础资源的所有可能实现方式,根据所述N类基础资源的每种可能实现方式对所述功能进行自动化测试,获得所述每种可能实现方式对应的测试结果。
可选的,所述N类基础资源包括用户权限、操作***镜像、虚拟机模板规格、网络、宿主机、云硬盘中的至少一类。
可选的,所述测试用例包含测试前提;
所述装置还包括检测单元,用于在根据所述标记确定所述N类基础资源之前,检测所述OpenStack云平台的配置和/或资源是否满足所述测试前提;如果满足则继续;否则,确定所述测试用例执行失败并打印日志。
可选的,所述装置还包括登录单元,用于在所述处理单元运行所述测试脚本之前,远程登陆到所述OpenStack云平台的控制节点;
所述处理单元具体用于:在所述控制节点构建容器,在所述容器中运行所述根据所述测试用例编写的测试脚本。
可选的,所述装置还包括获取单元,用于在所述处理单元运行所述测试脚本之前,通过所述OpenStack云平台的客户端获取所述OpenStack云平台的资源信息,其中所述资源信息包括所述OpenStack云平台中各类基础资源的版本类型;将所述资源信息重定向到指定文件中作为所述测试脚本的资源配置文件;
所述处理单元具体用于:从所述资源配置文件中获取所述N类基础资源中每类基础资源对应的版本类型。
第三方面,本发明实施例提供一种OpenStack测试装置,包括:处理器和存储器;
所述存储器用于存储计算机执行指令,当所述处理器执行所述指令时,使所述装置执行本发明实施例第一方面或第一方面的任一种可选的实施方式所述的方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述指令在计算机上运行时,使得计算机执行本发明实施例第一方面或第一方面的任一种可选的实施方式所述的方法。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
将待测试的功能对应的测试用例打上标记,用于指示OpenStack云平台实现待测试的功能所需要的N类基础资源,在运行测试脚本执行自动化测试的时候,通过标记来判断当前测试场景需要遍历基础资源,保证每个类别资源的所有版本都能被覆盖到,并且在N大于1时还可以实现存在依赖关系的不同类别的基础资源之间能进行组合测试。这样既能避免手动测试带来的耗时耗力问题,还能解决现有自动化测试无法测试全面的问题,提高了测试的覆盖率和全面性,提高了测试质量和测试效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中OpenStack测试方法的流程示意图;
图2为本发明实施例中测试脚本的逻辑图;
图3为本发明实施例中OpenStack测试装置的结构示意图;
图4为本发明实施例中OpenStack测试装置的结构示意图。
具体实施方式
下面通过附图以及具体实施例对本发明技术方案做详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
需要理解的是,在本发明实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。在本发明实施例的描述中“多个”,是指两个或两个以上。
本发明实施例中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack通过各种互补的服务(如计算、镜像、存储、网络等)提供了基础设施即服务(Infrastructure as a Service,IaaS)的解决方案,每个服务提供应用程序编程接口(Application Programming Interface,API)以进行集成。
Openstack云平台提供的最基础的服务就是虚拟机生命周期的管理,通常创建一个虚拟机需要用户决定操作***镜像、虚拟机规格、网络、存储的类型、以及宿主机类型。例如,操作***有Windows server 2008、Windows server 2012、Centos6x、Centox7x、RedHat7.1、Ubuntu 16.04、Suse 11等;虚拟机规格有1C2G、2C4G、8C16G、64C128G等;存储类型有CEPH、IP-san、FC-san、lvm等;网络类型有虚拟局域网(Virtual Local Area Network,VLAN)、虚似扩展局域网(Virtual Extensible LAN,VXLAN)、通用路由封装协议(GenericRouting Encapsulation,GRE)等;宿主机区分共享性还是独享性主机、区分不同的虚拟化软件等,且不同角色的用户对于不同的资源、不同的功能是区别对待的。
一般上线的OpenStack云平台,上面提到的基础资源种类都是非常多的,用户可根据自己的需求合理的选择对应的资源配置作为参数进行创建虚拟机,并且还会使用OpenStack云平台提供的功能对已创建的资源进行维护和管理。通常情况下,OpenStack是作为一个底层的二次开发云平台,如果要和前端管理页面联调成功,底层的OpenStack的需求功能必须先保证都能支持。因此,一个可交付的OpenStack云平台需要经过全面的测试,不仅包括硬件、软件、配置等方面的测试,还需要根据用户不同的需求进行测试。
但是,由于OpenStack功能复杂,并且可选用的基础资源种类繁多,进行一次完整的功能测试需要花费大量时间。目前,一次OpenStack版本的发布需要至少耗费大概半个月以上的时间去进行全量的功能测试,而这种测试从目前已知的技术来看,主要有如下两种方式。
第1种,手动测试为主。测试人员进行全面的测试,针对发布的功能逐个去测试,并记录检查结果。此方法虽然测试结果比较可靠准确,但是费时较多,效率极低。
第2种,自动化测试为主。人员编写测试脚本,通过预先配置好测试资源,测试脚本调用云平台的API接口的方式来执行自动化测试,最终收集测试结果。此方法虽然能实现测试过程自动化,但是自动化执行配置只能指定某一个基础资源去测试,无法覆盖全部的测试场景,例如社区的tempest,弹性不足,灵活性差,测试结果不全面。
另外,OpenStack平台中的每一类基础资源可能包含有多种版本类型,比如操作***主要分Linux发行版(如Debian、Ubuntu、openSUSE、Fedora、Red Hat、Centos等)和Windows操作***(Windows 2008、Windows 2012、Windows 7、Windows10等);虚拟机规格1C2G、2C4G、8C16G...64C128G,甚至更大;存储类型后端可以是CEPH、IP-san、FC-san、lvm等;承载虚拟机的宿主机也有很多种。这样的现状下,还存在的问题就是OpenStack云平台的一些功能并不能对所有不同的基础资源之间组合都能够完美的支持。
例如,用户使用不同的操作***来创建虚拟机,OpenStack的一些虚拟机管理功能就不能正常适配,如修改虚拟机密码、挂载云硬盘等;云硬盘选用另一种后端存储,OpenStack云硬盘管理的功能就不能全部正常使用,如云硬盘无法备份,限速等。
例如,OpenStack的某个功能测下来支持了某个操作***,但是对于不同的虚拟机规格并不能完全支持,内存选用太大会导致虚拟机蓝屏,虚拟机启动不起来等问题。如在用windows操作***创建kvm虚拟机的时候,虚拟机规格内存选用了128G,结果虚拟机操作***无法启动。
针对现有技术存在的以上技术问题,本发明实施例提供一种OpenStack测试方法及装置。参照图1,本发明实施例所提供的OpenStack测试方法可以包括:
S101:确定OpenStack云平台的待测试的功能对应的测试用例;
在本发明实施例中,根据openstack的每个需要测试的功能编写对应的测试用例,每个测试用例均包含测试前提、测试步骤以及预期结果。为了更清楚地阐述本发明实施例,文本接下来的描述中主要以一个测试用例为例进行详细说明,在多个测试用例的场景下,针对多个测试用例中每个测试用例执行本发明实施例中的测试方法。
S102:确定所述OpenStack云平台实现所述功能所需要的N类基础资源,设置所述测试用例对应的标记;其中,所述标记用于指示所述N类基础资源,N为正整数;
在本发明实施例中,基础资源的类型可以有用户权限、操作***镜像、虚拟机模板规格、网络、宿主机、云硬盘等,本发明实施例不做具体限制。每个类型的基础资源可以包含一个或者多个不同版本类型,例如:用户权限可以有管理员和普通用户;操作***镜像可以有Windows server 2008、Windows server 2012、Centos6x、Centox7x、RedHat 7.1、Ubuntu16.04、Suse 11等;虚拟机模板规格可以有1C2G、2C4G、8C16G、64C128G等;云硬盘可以有CEPH、IP-san、FC-san、lvm等;网络可以有VLAN、VXLAN、GRE等;宿主机可以有共享性主机、独享性主机等。
在本发明实施例中,为测试用例设置标记的目的是为后面编写测试脚本提供是否需要去遍历什么类型的基础资源提供依据。在具体实施时,标记的具体实现方式可以根据需求自定义,本发明实施例不做限制。
这里以一种可能的实现方式为例进行说明:C0表征不区分任何资源,测试脚本在执行测试用例时使用默认的配置中指定的资源;C1表征区分用户角色类型,测试脚本在执行测试用例时需要遍历所有当前openstack环境下的用户类型;C2表征区分操作***镜像,测试脚本在执行测试用例时需要遍历所有操作***镜像;C3表征区分虚拟机模板规格,测试脚本在执行测试用例时需要遍历openstack平台下提供给用户的所有虚拟机模板规格;C4表征区分云硬盘,测试脚本在执行测试用例时需要遍历openstack下的所有的云硬盘类型;C2C3表征同时区分操作***和模板规格,测试脚本在执行测试用例时需要对openstack下的操作***和模板规格进行一对一的组合,并遍历测试所有可能的组合方式;C2C4表征同时区分操作***和云硬盘类型,测试脚本在执行测试用例时需要对openstack下的操作***和云硬盘一对一进行组合,遍历测试所有可能的组合方式。当然,在具体实施过程中还可以有C5、C6等来代表更多的资源类型以及资源类型的组合,本文不进行穷举。
S103:运行根据所述测试用例编写的测试脚本,根据所述标记确定所述N类基础资源,确定所述OpenStack云平台中所述N类基础资源中每类基础资源包含的版本类型,根据所述N类基础资源中所有基础资源包含的版本类型确定所述N类基础资源的所有可能实现方式,根据所述N类基础资源的每种可能实现方式对所述功能进行自动化测试,获得所述每种可能实现方式对应的测试结果。
在具体实施过程中,可根据测试用例使用python语言调用OpenStack的API接口编写测试脚本,每个测试场景都用单独的函数来定义,测试脚本的代码逻辑主要实现以下功能:检查测试前提、根据标记符读取资源配置文件、测试执行(包括测试步骤、预期结果断言等)、测试结果日志输出。
在具体实施过程中,可通过远程登录工具(如SSH、Xshell等)远程登陆到所述OpenStack云平台的控制节点,然后在该控制节点构建容器,并在该容器中运行该测试脚本。
在具体实施过程中,在运行根据所述测试用例编写的测试脚本之前,可通过编写的shell脚本调用OpenStack云平台的客户端获取所述OpenStack云平台的资源信息,其中所述资源信息包括所述OpenStack云平台中各类基础资源的版本类型;将所述资源信息重定向到指定文件中作为所述测试脚本的资源配置文件;进而在运行该测试脚本时,可从该资源配置文件中获取所述N类基础资源中每类基础资源对应的版本类型,找到遍历的数据依据。
图2为测试脚本的逻辑图:首先检查前提条件,比如当前openstack测试环境的配置或资源是否满足当前用例的测试前提,如果满足则继续,否则用例执行失败打印日志;然后检查当前函数定义的标记变量,即上述S102中的标记需要以变量的方式先定义好,如果标记为C0,则不读取资源配置文件,直接往下执行或者读取默认配置文件中的默认参数,如果是其他标记,则从资源配置文件中遍历对应的资源类型下定义的配置信息,比如在需要使用到对应资源参数时,以FOR循环逐个读取并执行测试步骤和测试结果断言。假设资源配置文件为配置.txt,内容如下:
[images]<----资源类型;
Images=镜像1,镜像2,镜像3…<---配置信息;
[volume]<----资源类型;
Type=Type1,Type2,type3…<---配置信息;
[flavor]<----资源类型;
Flavor=模板1,模板2,模板3…<---配置信息。
以C2为例,在运行测试脚本时,读取配置文件中定义的images=centos7,windows2012,suse12...,作为列表传入,并遍历列表去执行测试,即变量以镜像centos7传入,执行下测试,然后以windows2012传入执行测试,依次执行下去,最终针对操作***的每个版本均获得一个对应的测试结果。
以C2C3为例,在运行测试脚本时,读取配置文件中定义的images=centos7,windows2012,suse12...,以及Flavor=模板1,模板2,模板3...作为列表传入,遍历操作***和虚拟模板的所有组合可能,并遍历所有组合去执行测试,最终针对遍历操作***和虚拟模板的每一种可能的组合方式均获得一个对应的测试结果。
在上述方案中,将openstack平台中的基础资源区分用户权限、操作***镜像、虚拟机模板规格、网络、宿主机、云硬盘等多个类型,为待测试的功能对应的测试用例打上标记,用于指示OpenStack云平台实现待测试的功能所需要的N类基础资源,进而在运行测试脚本执行自动化测试的时候,通过标记来判断当前测试场景需要遍历基础资源,保证每个类别资源的所有版本都能被覆盖到,并且还可以实现存在依赖关系的不同类别的基础资源之间能进行组合测试。这样既能避免手动测试带来的耗时耗力问题,还能解决现有自动化测试无法测试全面的问题,提高了测试的覆盖率和全面性,提高了测试质量和测试效率。
基于同一发明构思,本发明实施例还提供一种OpenStack测试装置,参照图3,包括:
确定单元201,用于确定OpenStack云平台的待测试的功能对应的测试用例;
设置单元202,用于确定所述OpenStack云平台实现所述功能所需要的N类基础资源,设置所述测试用例对应的标记;其中,所述标记用于指示所述N类基础资源,N为正整数;
处理单元203,用于运行根据所述测试用例编写的测试脚本,根据所述标记确定所述N类基础资源,确定所述OpenStack云平台中所述N类基础资源中每类基础资源包含的版本类型,根据所述N类基础资源中所有基础资源包含的版本类型确定所述N类基础资源的所有可能实现方式,根据所述N类基础资源的每种可能实现方式对所述功能进行自动化测试,获得所述每种可能实现方式对应的测试结果。
可选的,所述N类基础资源包括用户权限、操作***镜像、虚拟机模板规格、网络、宿主机、云硬盘中的至少一类。
可选的,所述测试用例包含测试前提;
所述装置还包括检测单元,用于在根据所述标记确定所述N类基础资源之前,检测所述OpenStack云平台的配置和/或资源是否满足所述测试前提;如果满足则继续;否则,确定所述测试用例执行失败并打印日志。
可选的,所述装置还包括登录单元,用于在所述处理单元203运行所述测试脚本之前,远程登陆到所述OpenStack云平台的控制节点;
所述处理单元203具体用于:在所述控制节点构建容器,在所述容器中运行所述根据所述测试用例编写的测试脚本。
可选的,所述装置还包括获取单元,用于在所述处理单元203运行所述测试脚本之前,通过所述OpenStack云平台的客户端获取所述OpenStack云平台的资源信息,其中所述资源信息包括所述OpenStack云平台中各类基础资源的版本类型;将所述资源信息重定向到指定文件中作为所述测试脚本的资源配置文件;
所述处理单元203具体用于:从所述资源配置文件中获取所述N类基础资源中每类基础资源对应的版本类型。
本发明所述方法和装置基于同一发明构思,由于方法及装置解决问题的原理相似,以上各单元所执行操作的具体实现方式可以参照本发明实施例上述OpenStack测试方法中对应的步骤,因此装置与方法的实施可以相互参见,重复之处不再赘述。
基于同一发明构思,本发明实施例还提供一种OpenStack测试装置,参照图4,包括:处理器301和存储器302;
所述存储器302用于存储计算机执行指令,当所述处理器301执行所述指令时,使所述装置执行本发明实施例所述的OpenStack测试方法。
基于同一发明构思,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述指令在计算机上运行时,使得计算机执行本发明实施例所述的OpenStack测试方法。
基于同一发明构思,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行本发明实施例上述人与动物交互的方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.一种OpenStack测试方法,其特征在于,包括:
确定OpenStack云平台的待测试的功能对应的测试用例;
确定所述OpenStack云平台实现所述功能所需要的N类基础资源,设置所述测试用例对应的标记;其中,所述标记用于指示所述N类基础资源,N为正整数;
运行根据所述测试用例编写的测试脚本,根据所述标记确定所述N类基础资源,确定所述OpenStack云平台中所述N类基础资源中每类基础资源包含的版本类型,根据所述N类基础资源中所有基础资源包含的版本类型确定所述N类基础资源的所有可能实现方式,根据所述N类基础资源的每种可能实现方式对所述功能进行自动化测试,获得所述每种可能实现方式对应的测试结果;
在运行根据所述测试用例编写的测试脚本之前,还包括:
通过所述OpenStack云平台的客户端获取所述OpenStack云平台的资源信息,其中所述资源信息包括所述OpenStack云平台中各类基础资源的版本类型;
将所述资源信息重定向到指定文件中作为所述测试脚本的资源配置文件;
所述确定所述OpenStack云平台中所述N类基础资源中每类基础资源包含的版本类型,包括:
从所述资源配置文件中获取所述N类基础资源中每类基础资源对应的版本类型。
2.如权利要求1所述的方法,其特征在于,所述N类基础资源包括用户权限、操作***镜像、虚拟机模板规格、网络、宿主机、云硬盘中的至少一类。
3.如权利要求1所述的方法,其特征在于,所述测试用例包含测试前提;在根据所述标记确定所述N类基础资源之前,还包括:
检测所述OpenStack云平台的配置和/或资源是否满足所述测试前提;
如果满足则继续;否则,确定所述测试用例执行失败并打印日志。
4.如权利要求1所述的方法,其特征在于,在运行根据所述测试用例编写的测试脚本之前,还包括:
远程登陆到所述OpenStack云平台的控制节点;
运行根据所述测试用例编写的测试脚本,具体包括:
在所述控制节点构建容器,在所述容器中运行所述根据所述测试用例编写的测试脚本。
5.一种OpenStack测试装置,其特征在于,包括:
确定单元,用于确定OpenStack云平台的待测试的功能对应的测试用例;
设置单元,用于确定所述OpenStack云平台实现所述功能所需要的N类基础资源,设置所述测试用例对应的标记;其中,所述标记用于指示所述N类基础资源,N为正整数;
处理单元,用于运行根据所述测试用例编写的测试脚本,根据所述标记确定所述N类基础资源,确定所述OpenStack云平台中所述N类基础资源中每类基础资源包含的版本类型,根据所述N类基础资源中所有基础资源包含的版本类型确定所述N类基础资源的所有可能实现方式,根据所述N类基础资源的每种可能实现方式对所述功能进行自动化测试,获得所述每种可能实现方式对应的测试结果;
所述装置,还包括:
获取单元,用于在所述处理单元运行所述测试脚本之前,通过所述OpenStack云平台的客户端获取所述OpenStack云平台的资源信息,其中所述资源信息包括所述OpenStack云平台中各类基础资源的版本类型;将所述资源信息重定向到指定文件中作为所述测试脚本的资源配置文件;
所述处理单元,具体用于从所述资源配置文件中获取所述N类基础资源中每类基础资源对应的版本类型。
6.如权利要求5所述的装置,其特征在于,所述N类基础资源包括用户权限、操作***镜像、虚拟机模板规格、网络、宿主机、云硬盘中的至少一类。
7.如权利要求5所述的装置,其特征在于,所述测试用例包含测试前提;所述装置,还包括:
检测单元,用于在根据所述标记确定所述N类基础资源之前,检测所述OpenStack云平台的配置和/或资源是否满足所述测试前提;如果满足则继续;否则,确定所述测试用例执行失败并打印日志。
8.如权利要求5所述的装置,其特征在于,所述装置,还包括:
登录单元,用于在所述处理单元运行所述测试脚本之前,远程登陆到所述OpenStack云平台的控制节点;
所述处理单元,具体用于在所述控制节点构建容器,在所述容器中运行所述根据所述测试用例编写的测试脚本。
9.一种OpenStack测试装置,其特征在于,包括:处理器和存储器;
所述存储器用于存储计算机执行指令,当所述处理器执行所述指令时,使所述装置执行如权利要求1-4任意一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述指令在计算机上运行时,使得计算机执行如权利要求1-4任意一项所述的方法。
CN201811276565.7A 2018-10-30 2018-10-30 一种OpenStack测试方法及装置 Active CN111124867B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811276565.7A CN111124867B (zh) 2018-10-30 2018-10-30 一种OpenStack测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811276565.7A CN111124867B (zh) 2018-10-30 2018-10-30 一种OpenStack测试方法及装置

Publications (2)

Publication Number Publication Date
CN111124867A CN111124867A (zh) 2020-05-08
CN111124867B true CN111124867B (zh) 2022-12-16

Family

ID=70484388

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811276565.7A Active CN111124867B (zh) 2018-10-30 2018-10-30 一种OpenStack测试方法及装置

Country Status (1)

Country Link
CN (1) CN111124867B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111767226B (zh) * 2020-06-30 2023-10-27 上海云轴信息科技有限公司 一种云计算平台资源的测试方法、***及设备
CN111897724B (zh) * 2020-07-21 2022-12-06 国云科技股份有限公司 一种适用于云平台的自动化测试方法及装置
CN112068905B (zh) * 2020-08-28 2022-08-16 苏州浪潮智能科技有限公司 一种icos***功能介绍场景化的方法、存储介质及装置
CN112231210A (zh) * 2020-10-13 2021-01-15 中移(杭州)信息技术有限公司 网络功能虚拟化环境下的测试方法、设备及存储介质
CN112162927B (zh) * 2020-10-13 2024-04-26 网易(杭州)网络有限公司 云计算平台的测试方法、介质、装置和计算设备
CN112346977A (zh) * 2020-11-10 2021-02-09 中国信息通信研究院 量子云计算平台软件功能测评方法和装置
CN112579399B (zh) * 2020-12-28 2024-04-09 上海蓝云网络科技有限公司 云服务测试方法、装置、电子设备及计算机存储介质
CN113672518B (zh) * 2021-09-07 2024-06-18 京东科技控股股份有限公司 一种测试用例构建方法及相关设备
CN116303067B (zh) * 2023-03-24 2024-03-22 安超云软件有限公司 一种基于云测试平台的测试方法、装置、设备以及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799519A (zh) * 2012-06-07 2012-11-28 浪潮电子信息产业股份有限公司 一种集群文件***自动化测试方法
CN105117346A (zh) * 2015-09-24 2015-12-02 上海爱数软件有限公司 虚拟化平台的分布式***自动化测试方法及***

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799519A (zh) * 2012-06-07 2012-11-28 浪潮电子信息产业股份有限公司 一种集群文件***自动化测试方法
CN105117346A (zh) * 2015-09-24 2015-12-02 上海爱数软件有限公司 虚拟化平台的分布式***自动化测试方法及***

Also Published As

Publication number Publication date
CN111124867A (zh) 2020-05-08

Similar Documents

Publication Publication Date Title
CN111124867B (zh) 一种OpenStack测试方法及装置
US10250461B2 (en) Migrating legacy non-cloud applications into a cloud-computing environment
US9667489B2 (en) Generation and management of computing infrastructure instances
US9632914B2 (en) Error diagnostic in a production environment
US11119746B2 (en) Extensions for deployment patterns
US9098364B2 (en) Migration services for systems
US10715403B2 (en) Scalable, standardized I.T. deployment platform
US10013491B2 (en) Methods and systems of workload mobility across divergent platforms
US10430321B1 (en) White box code concurrency testing for transaction processing
US10977167B2 (en) Application monitoring with a decoupled monitoring tool
US20160124823A1 (en) Log analytics for problem diagnosis
CN110096424B (zh) 测试的处理方法、装置、电子设备及存储介质
US10545847B2 (en) Grouping and isolating software changes to increase build quality
US10983903B1 (en) Enhanced automated protocol for secure application testing
US10180900B2 (en) Recordation of user interface events for script generation
US10452371B2 (en) Automating enablement state inputs to workflows in z/OSMF
JP2021039393A (ja) パッケージ化支援システムおよびパッケージ化支援方法
US20190349275A1 (en) Open-Loop Control Assistant to Guide Human-Machine Interaction
US9513948B2 (en) Automated virtual machine provisioning based on defect state
US10705895B2 (en) Device based automated tool integration for lifecycle management platform
CN109597627A (zh) 一种组件安装方法、装置、存储介质和处理器
US8347315B1 (en) Configuration console for messaging middleware
US11410107B2 (en) Systems and methods for real-time determination of cost-to-serve metrics and cost attribution for cloud applications in the public cloud
US10270662B2 (en) Local consumption of remote services
US11928040B2 (en) API adapter test system, API adapter test assistance device, API adapter test assistance method, and API adapter test assistance program

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant