#OpenStack Tempest
Tempest是一个OpenStack自动化测试的项目,主要用来测试OpenStack API进行测试和一部分的压力测试,包含了一部分的CLI client的测试和场景测试。简单的看了一下Tempest的代码构成,主要测试方式还是类似于单元测试的写法,目前看到主要用了nose来驱动测试。
##Tempest安装
从github克隆tempest源码:
安装python-pip,需要增加EPEL源:
安装依赖:
或者手工安装依赖:
注意
安装依赖包cryptography失败,centos安装需要毅力如下包:
测试工具采用nose或者testr,建议安装:
至此安装结束,可以通过这块测试一些基本用例。
##Tempest代码结构
测试的主要模块有如下几部分,api
主要测试OpenStack API部分的功能,cli
主要测试OpenStack CLI接口,scenario
主要根据一些复杂场景进行测试,stress
压力测试部分,目前可以结合rally进行压力测试,thirdparty
这部分主要针对于EC2的API测试用例。
##测试配置(以测试token为例说明)
修改tempest测试配置文件:
注意,本次测试主要针对于token这块的测试,仅做说明使用,这里仅需配置[compute][indentifty]两个配置项,如需要测试其它需要根据需要配置其它参数。
##测试
这里作为入门选择一个api的测试作为例子进行测试,其它的测试方式雷同,以后做测试可以进行参考。这里选择测试keystone的token相关的功能,具体测试过程如下:
可以看到测试结果,4个测试,全部通过。
##一些问题和思考
- 测试报告如何归类
- 覆盖率如何统计
- 如果测试过程当中终止,测试数据如何清理
- ……
blog comments powered by