CN107515823A - 一种生成配置文件的方法 - Google Patents

一种生成配置文件的方法 Download PDF

Info

Publication number
CN107515823A
CN107515823A CN201710701645.1A CN201710701645A CN107515823A CN 107515823 A CN107515823 A CN 107515823A CN 201710701645 A CN201710701645 A CN 201710701645A CN 107515823 A CN107515823 A CN 107515823A
Authority
CN
China
Prior art keywords
tempest
script
openstack environment
configuration file
environment
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
Application number
CN201710701645.1A
Other languages
English (en)
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710701645.1A priority Critical patent/CN107515823A/zh
Publication of CN107515823A publication Critical patent/CN107515823A/zh
Pending legal-status Critical Current

Links

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
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

本发明提供了一种生成配置文件的方法,所述的方法包括以下步骤:S1:部署openstack环境;S2:在openstack环境下建立tempest框架;S3:在openstack环境和tempest框架下,利用python语言编写测试项目执行脚本;S4:在openstack环境下运行步骤S3中的脚本,输出脚本执行结果生成配置文件。在部署完成openstack环境和tempest框架后,利用openstack环境可以直接执行的python语言来编写测试项目执行脚本,并利用脚本的执行结果生成配置文件,省去了繁琐的手工配置的步骤,提升效率。

Description

一种生成配置文件的方法
技术领域
本发明涉及计算机技术领域,具体的说是一种生成配置文件的方法。
背景技术
OpenStack(开源云计算平台)是一个开源的云计算管理平台项目,支持几乎所有类型的云环境。OpenStack有全球大量的组织支持,大量的开发人员参与,发展迅速。OpenStack有望在未来的基础设施及服务资源管理方面占据领导位置,成为公有云、私有云及混合云管理的“云操作系统”标准。
Openstack中针对不同的组件服务有不同的对应项目,为了保证社区成员提交的代码符合现有规范,社区有对应的测试项目来验证提测代码,其中,tempest测试框架是openstack社区项目最重要的测试工具,对Openstack终端发起一系列API(应用程序编程接口)请求,并且对终端的响应进行验证。tempest测试通过tempest.conf配置文件来描述整个测试环境,指导工具进行测试。然而,目前tempest环境搭建后,需要根据现有环境手动去配置文件,由于配置项较多,对于项目其他成员而言会花费较多时间在配置环境中。
发明内容
为了解决上述问题,提供了一种生成配置文件的方法,根据已经部署好的测试环境,通过建立并执行测试项目执行脚本,并将结果自动生成配置文件,达到一键自动配置的效果,可以节省时间,提高效率。
本发明实施例提供了一种生成配置文件的方法,所述的方法包括:
S1:部署openstack环境;
S2:在openstack环境下建立tempest框架;
S3:在openstack环境和tempest框架下,利用python语言编写测试项目执行脚本;
S4:在openstack环境下运行步骤S3中的脚本,输出脚本执行结果生成配置文件。
进一步的,所述的方法还包括:
S5:将步骤S3中的测试项目执行脚本拷贝并存储在硬盘中。
进一步的,所述步骤S1的具体实现过程为:
用户选择部署方式,并从官网下载该部署方式的代码;
用户修改配置文件,并执行安装脚本,自动部署openstack环境;
自动部署完成后,检测有无报错信息,若有,重新部署openstack环境,若无,进入下一步;
访问配置界面并进行基础操作,检查是否有报错现象,若是,重新部署openstack环境,若否,则完成openstack环境部署。
进一步的,所述步骤S2的具体实现过程为:
用户下载并安装tempest;
用户打开tempest下的CLI(命令行界面),验证命令是否可以执行,若是,进入下一步,若否,重新安装tempest;
用户查看安装tempest版本号是否更新到最新,若是,完成tempest安装,若否,重新安装最新版本的tempest。
进一步的,所述测试项目执行脚本的命令执行步骤为:
设置测试项目名称及测试内容;
选择openstack环境下的文件夹并设置为检索路径;
根据设置的测试项目内容检索文件夹中的CLI命令;
执行检索到的CLI命令。
进一步的,步骤S4中,输出的脚本执行结果采用conf文件格式。
本发明具体实施例的有益效果是:
1、本发明实施例在部署完成openstack环境和tempest框架后,利用openstack环境可以直接执行的python语言来编写测试项目执行脚本,并利用脚本的执行结果生成配置文件,省去了繁琐的手工配置的步骤,提升效率。而且,测试项目执行脚本可以重复使用,也就可以节省大量的重复劳动,提高工作效率。
2、测试项目执行脚本是针对测试项目编写的,且适用于所有的openstack环境,将测试项目执行脚本单独存储在服务器硬盘或移动硬盘中,不仅可以直接将测试项目执行脚本插入其它的openstack环境,而且一旦openstack环境出现问题时,即使需要新建openstack环境,也不需要再次编写测试项目执行脚本,节省时间,提高效率。
3、openstack环境及相应的tempest测试集均是由python来实现,openstack封装了非常丰富的CLI命令,几乎可以覆盖界面逻辑操作,所以通过编写项目执行脚本,检索并灵活运用openstack环境下已有的CLI命令,可以有效利用openstack环境下的文件,大大提升工作效率。
附图说明
图1是本发明实施例1的方法流程图;
图2是本发明实施例2的方法流程图。
具体实施方式
为了使本领域的技术人员能够更好地理解、实现本发明,下面通过具体实施例对本发明进行详细说明。
实施例1
如图1所示,提供了一种生成配置文件的方法,所述的方法包括:
S1:部署openstack环境,具体实现过程为:用户选择部署方式,并从官网下载该部署方式的代码。然后,用户修改配置文件,并执行安装脚本,自动部署openstack环境,等到自动部署完成后,检测部署完成后的环境下有无报错信息,若有报错信息,说明openstack环境存在隐患,需要重新部署openstack环境,若没有报错信息,再进一步检查配置界面。用户检查配置界面试,需要访问配置界面并进行基础操作,检查是否有报错现象,若有报错现象,说明openstack环境存在隐患,重新部署openstack环境,若没有报错信息,则代表已经完成openstack环境的部署操作。
下面以devstack方式部署openstack环境为例:
用户从官网下载devstack代码,根据自身需求修改相关的配置文件,然后以stack用户执行stack.sh脚本,自动部署openstack环境,部署完成后的openstack环境,满足以下两个条件:1)没有报错信息;2)访问配置文件里的horizon界面进行基础操作不出现报错。
S2:在openstack环境下建立tempest框架,具体实现过程为:用户从官网下载并安装tempest,tempest既可以安装在默认目录,也可以安装在用户自定义的目录下。然后,用户打开tempest下的CLI,验证CLI命令是否可以执行,CLI命令验证过程可以选择部分验证,也可以全部验证,当验证的命令可以执行时,用户进行tempest版本号的查看,当验证的命令不可以执行时,用户就需要重新安装tempest。对于tempest版本号的查看,用户查看安装tempest版本号是否更新到最新,若tempest版本号是最新的,代表tempest安装操作已经完成,若tempest版本号不是最新的,需要重新安装最新版本的tempest。需要注意的是,对于tempest版本号的查看,既可以通过与官网最新版本号进行比对,也可以通过执行CLI命令中的版本号查看进行验证。
比如,在实际操作时,tempest下载安装到默认目录/opt/stack/tempest,环境运行的依赖包都已安装,确保tempest CLI命令可以运行,同时使用tempest–version命令查看安装tempest版本号是否更新到最新。
S3:利用python语言编写测试项目执行脚本,所述测试项目执行脚本的命令执行步骤为:
设置测试项目名称及测试内容,测试项目名称以用户实际习惯为准,测试内容涉及计算、网络、存储、用户等信息,需要按照openstack环境下的通用名称进行命名。
选择openstack环境下的文件夹并设置为检索路径,一般情况下,直接选择openstack环境下的全部文件夹作为检索路径即可。砸及实际应用中,用户也可以根据自身需求,选择一部分文件夹或者特定的文件夹作为检索路径。
根据设置的测试项目内容检索文件夹中的CLI命令,由于测试项目内容采用通用命名,因此如果openstack环境下的文件夹中存在与测试内容相对应的CLI命令,均可以被检索出来,例如查看镜像列表、返回设置为public类型的镜像信息、查看网络列表信息等等。
该脚本最后执行的指令,是执行检索到的CLI命令,主要是由于openstack对各个服务组件封装的CLI命令都比较齐全,界面中的操作基本都有对应的CLI命令替代执行,因此,执行检索到的CLI命令就能实现用户预设测试内容的操作。
S4:运行步骤S3中的脚本,输出脚本执行结果生成配置文件。仍然以devstack方式部署openstack环境为例,只需要对horizon中配置的配置项在测试脚本中执行对应的CLI命令,并将执行结果以conf文件的格式输出tempest.conf中即可。
需要注意的是,在以后的测试中,可以重复使用步骤S3中的脚本,自动获取配置文件,方便执行。
实施例2
如图2所示,提供了一种生成配置文件的方法,所述的方法包括:
S1:部署openstack环境,具体实现过程为:用户选择部署方式,并从官网下载该部署方式的代码。然后,用户修改配置文件,并执行安装脚本,自动部署openstack环境,等到自动部署完成后,检测部署完成后的环境下有无报错信息,若有报错信息,说明openstack环境存在隐患,需要重新部署openstack环境,若没有报错信息,再进一步检查配置界面。用户检查配置界面试,需要访问配置界面并进行基础操作,检查是否有报错现象,若有报错现象,说明openstack环境存在隐患,重新部署openstack环境,若没有报错信息,则代表已经完成openstack环境的部署操作。
下面以devstack方式部署openstack环境为例:
用户从官网下载devstack代码,根据自身需求修改相关的配置文件,然后以stack用户执行stack.sh脚本,自动部署openstack环境,部署完成后的openstack环境,满足以下两个条件:1)没有报错信息;2)访问配置文件里的horizon界面进行基础操作不出现报错。
S2:在openstack环境下建立tempest框架,具体实现过程为:用户从官网下载并安装tempest,tempest既可以安装在默认目录,也可以安装在用户自定义的目录下。然后,用户打开tempest下的CLI,验证CLI命令是否可以执行,CLI命令验证过程可以选择部分验证,也可以全部验证,当验证的命令可以执行时,用户进行tempest版本号的查看,当验证的命令不可以执行时,用户就需要重新安装tempest。对于tempest版本号的查看,用户查看安装tempest版本号是否更新到最新,若tempest版本号是最新的,代表tempest安装操作已经完成,若tempest版本号不是最新的,需要重新安装最新版本的tempest。需要注意的是,对于tempest版本号的查看,既可以通过与官网最新版本号进行比对,也可以通过执行CLI命令中的版本号查看进行验证。
比如,在实际操作时,tempest下载安装到默认目录/opt/stack/tempest,环境运行的依赖包都已安装,确保tempest CLI命令可以运行,同时使用tempest–version命令查看安装tempest版本号是否更新到最新。
S3:利用python语言编写测试项目执行脚本,所述测试项目执行脚本的命令执行步骤为:
设置测试项目名称及测试内容,测试项目名称以用户实际习惯为准,测试内容涉及计算、网络、存储、用户等信息,需要按照openstack环境下的通用名称进行命名。
选择openstack环境下的文件夹并设置为检索路径,一般情况下,直接选择openstack环境下的全部文件夹作为检索路径即可。砸及实际应用中,用户也可以根据自身需求,选择一部分文件夹或者特定的文件夹作为检索路径。
根据设置的测试项目内容检索文件夹中的CLI命令,由于测试项目内容采用通用命名,因此如果openstack环境下的文件夹中存在与测试内容相对应的CLI命令,均可以被检索出来,例如查看镜像列表、返回设置为public类型的镜像信息、查看网络列表信息等等。
该脚本最后执行的指令,是执行检索到的CLI命令,主要是由于openstack对各个服务组件封装的CLI命令都比较齐全,界面中的操作基本都有对应的CLI命令替代执行,因此,执行检索到的CLI命令就能实现用户预设测试内容的操作。
S4:运行步骤S3中的脚本,输出脚本执行结果生成配置文件。仍然以devstack方式部署openstack环境为例,只需要对horizon中配置的配置项在测试脚本中执行对应的CLI命令,并将执行结果以conf文件的格式输出tempest.conf中即可。
S5:将步骤S3中的测试项目执行脚本拷贝并存储在硬盘中。测试项目执行脚本是针对测试项目编写的,且适用于所有的openstack环境,将测试项目执行脚本单独存储在服务器硬盘或移动硬盘中,不仅可以直接将测试项目执行脚本插入其它的openstack环境,而且一旦openstack环境出现问题时,即使需要新建openstack环境,也不需要再次编写测试项目执行脚本,节省时间,提高效率。
尽管说明书及附图和实施例对本发明创造已进行了详细的说明,但是,本领域技术人员应当理解,仍然可以对本发明创造进行修改或者等同替换;而一切不脱离本发明创造的精神和范围的技术方案及其改进,其均涵盖在本发明创造专利的保护范围当中。

Claims (6)

1.一种生成配置文件的方法,其特征是,所述的方法包括:
S1:部署openstack环境;
S2:在openstack环境下建立tempest框架;
S3:在openstack环境和tempest框架下,利用python语言编写测试项目执行脚本;
S4:在openstack环境下运行步骤S3中的脚本,输出脚本执行结果生成配置文件。
2.根据权利要求1所述的一种生成配置文件的方法,其特征是,所述的方法还包括:
S5:将步骤S3中的测试项目执行脚本拷贝并存储在硬盘中。
3.根据权利要求1或2所述的一种生成配置文件的方法,其特征是,所述步骤S1的具体实现过程为:
用户选择部署方式,并从官网下载该部署方式的代码;
用户修改配置文件,并执行安装脚本,自动部署openstack环境;
自动部署完成后,检测有无报错信息,若有,重新部署openstack环境,若无,进入下一步;
访问配置界面并进行基础操作,检查是否有报错现象,若是,重新部署openstack环境,若否,则完成openstack环境部署。
4.根据权利要求1或2所述的一种生成配置文件的方法,其特征是,所述步骤S2的具体实现过程为:
用户下载并安装tempest;
用户打开tempest下的CLI(命令行界面),验证命令是否可以执行,若是,进入下一步,若否,重新安装tempest;
用户查看安装tempest版本号是否更新到最新,若是,完成tempest安装,若否,重新安装最新版本的tempest。
5.根据权利要求1或2所述的一种生成配置文件的方法,其特征是,所述测试项目执行脚本的命令执行步骤为:
设置测试项目名称及测试内容;
选择openstack环境下的文件夹并设置为检索路径;
根据设置的测试项目内容检索文件夹中的CLI命令;
执行检索到的CLI命令。
6.根据权利要求1或2所述的一种生成配置文件的方法,其特征是,步骤S4中,输出的脚本执行结果采用conf文件格式。
CN201710701645.1A 2017-08-16 2017-08-16 一种生成配置文件的方法 Pending CN107515823A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710701645.1A CN107515823A (zh) 2017-08-16 2017-08-16 一种生成配置文件的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710701645.1A CN107515823A (zh) 2017-08-16 2017-08-16 一种生成配置文件的方法

Publications (1)

Publication Number Publication Date
CN107515823A true CN107515823A (zh) 2017-12-26

Family

ID=60723434

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710701645.1A Pending CN107515823A (zh) 2017-08-16 2017-08-16 一种生成配置文件的方法

Country Status (1)

Country Link
CN (1) CN107515823A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109324807A (zh) * 2018-09-27 2019-02-12 京信通信系统(中国)有限公司 OpenStack的计费模块安装方法和系统
CN111209719A (zh) * 2019-12-31 2020-05-29 西安翔腾微电子科技有限公司 Ic设计环境的自动化实现方法、装置、设备及存储介质
CN111444104A (zh) * 2020-04-01 2020-07-24 山东汇贸电子口岸有限公司 一种OpenStack功能测试的方法
CN117472785A (zh) * 2023-12-25 2024-01-30 银河麒麟软件(长沙)有限公司 Linux系统下的Openstack测试方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080126390A1 (en) * 2006-11-29 2008-05-29 Philip Arthur Day Efficient stress testing of a service oriented architecture based application
CN101807985A (zh) * 2010-03-03 2010-08-18 交通银行股份有限公司 一种数据中心集中式控制切换方法及系统
CN105429774A (zh) * 2014-09-19 2016-03-23 中兴通讯股份有限公司 一种网络管理系统调试网元配置的方法及装置
CN106843837A (zh) * 2016-12-21 2017-06-13 中电科华云信息技术有限公司 openstack组件容器化的构建方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080126390A1 (en) * 2006-11-29 2008-05-29 Philip Arthur Day Efficient stress testing of a service oriented architecture based application
CN101807985A (zh) * 2010-03-03 2010-08-18 交通银行股份有限公司 一种数据中心集中式控制切换方法及系统
CN105429774A (zh) * 2014-09-19 2016-03-23 中兴通讯股份有限公司 一种网络管理系统调试网元配置的方法及装置
CN106843837A (zh) * 2016-12-21 2017-06-13 中电科华云信息技术有限公司 openstack组件容器化的构建方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘宇 等: "基于Openstack的Tempest测试框架的原理与实践", 《HTTPS://WWW.IBM.COM/DEVELOPERWORKS/CN/CLOUD/LIBRARY/1403_LIUYU_OPENSTACKTEMPEST/INDEX.HTML》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109324807A (zh) * 2018-09-27 2019-02-12 京信通信系统(中国)有限公司 OpenStack的计费模块安装方法和系统
CN109324807B (zh) * 2018-09-27 2021-09-03 京信网络系统股份有限公司 OpenStack的计费模块安装方法和系统
CN111209719A (zh) * 2019-12-31 2020-05-29 西安翔腾微电子科技有限公司 Ic设计环境的自动化实现方法、装置、设备及存储介质
CN111444104A (zh) * 2020-04-01 2020-07-24 山东汇贸电子口岸有限公司 一种OpenStack功能测试的方法
CN111444104B (zh) * 2020-04-01 2023-04-07 山东汇贸电子口岸有限公司 一种OpenStack功能测试的方法
CN117472785A (zh) * 2023-12-25 2024-01-30 银河麒麟软件(长沙)有限公司 Linux系统下的Openstack测试方法及系统
CN117472785B (zh) * 2023-12-25 2024-04-16 银河麒麟软件(长沙)有限公司 Linux系统下的Openstack测试方法及系统

Similar Documents

Publication Publication Date Title
US11281570B2 (en) Software testing method, system, apparatus, device medium, and computer program product
US11016878B2 (en) System and method for data collection and analysis of information relating to mobile applications
CN107515823A (zh) 一种生成配置文件的方法
CN107615239B (zh) 用于托管和发布软件包的基础架构
Wargo PhoneGap essentials: Building cross-platform mobile apps
CN108427646B (zh) 基于Appium的安卓App自动化测试框架构建方法和装置
US8839201B2 (en) Capturing test data associated with error conditions in software item testing
US10067858B2 (en) Cloud-based software testing
US9684587B2 (en) Test creation with execution
US9069902B2 (en) Software test automation
CN109902005B (zh) 一种自动化测试的方法和系统
CN107832207A (zh) 接口性能测试方法、装置、存储介质和计算机设备
CN101695162A (zh) 一种移动终端空中固件升级方法及装置
CN107391362A (zh) 应用测试方法、移动终端及存储介质
CN111679982A (zh) 一种rest api接口软件自动化测试方法
US10387294B2 (en) Altering a test
US9292422B2 (en) Scheduled software item testing
CN104484176B (zh) 一种安卓系统窗口对象获取方法和装置
CN109977008A (zh) 一种应用程序依赖的js代码与原生库兼容的方法及终端
CN109474822A (zh) 一种安卓电视多国语言自动化测试的方法及装置
CN105868101B (zh) 一种软件测试方法
CN113987395A (zh) 基于云服务web监测的测试网站搭建方法与系统
Göth Testing techniques for mobile device applications
CN113157307A (zh) 一种软件版本升级方法及装置
US20230132531A1 (en) Software Development Project Infrastructure Builder Tool

Legal Events

Date Code Title Description
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20171226