CN107515823A - 一种生成配置文件的方法 - Google Patents
一种生成配置文件的方法 Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software 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文件格式。
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)
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)
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组件容器化的构建方法 |
-
2017
- 2017-08-16 CN CN201710701645.1A patent/CN107515823A/zh active Pending
Patent Citations (4)
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)
Title |
---|
刘宇 等: "基于Openstack的Tempest测试框架的原理与实践", 《HTTPS://WWW.IBM.COM/DEVELOPERWORKS/CN/CLOUD/LIBRARY/1403_LIUYU_OPENSTACKTEMPEST/INDEX.HTML》 * |
Cited By (7)
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 |