【Tempest】openstack自动化测试组件tempest及自动化测试工具nose
宝宝心里苦,但是宝宝只能在这穷乡僻壤说,下周又要开组会必须得干点事了。这次是做论文中的实验部分,主要利用到了openstack中的自动化测试组件Tempest,具体原因不细说了。
安装
分两种安装方法,一是直接使用devstack来安装openstack,这样的话tempest会自动由脚本安装,直接使用非常方便,但是问题是你要能成功运行devstack,反正我是花了一两天解决了无数遇到的问题才成功安装成功并且马上拍摄快照(机智如我)。第二种就是自己去搭(伪)分布式openstack并且自己安装tempest,这个比较麻烦了,需要手动去下载tempest的git仓库并且执行python setup.py,这里有一个写的很好的文档:http://www.ibm.com/developerworks/cn/cloud/library/1403_liuyu_openstacktempest/ IBM出品,必属精品。
nose模块
首先你需要安装nose模块,安装过程如下:
pip install nose
或
easy_install nose
或
python setup.py install
我们假设你已经成功安装了nose,那么建一个test文件夹,新建test.py,内容入下:
def Testfunc():
a=0
b=2
assert a==b
然后在目录下执行nosetests,结果如下:

为什么只输入nosetests会自动执行改目录下的test.py并且执行里面的Testfunc函数,是因为nose会自动识别目录中的测试用例,任何符合正则表达式(?:^|[b_.-])[Tt]est的类、函数、文件或目录,以及TestCase的之类都会被识别并执行。
Tempest
运行及测试报告:
执行 tempest 所有测试用例
nosetests tempest
执行 tempest 某一个包下的所有测试用例,比如 identity 包下的所有测试用例
nosetests tempest/tests/identity
重启devstack服务时,需要使用到screen -x命令,可能会遇到下面这个错误:
Cannot open your terminal '/dev/pts/0' - please check.
解决方法:
script /dev/null
然后就可以screen -x,接下来Ctr+a + 服务的编号,选择想要重启的服务,Ctr+c关闭服务,按一下↑键,执行这条命令,就完成了该服务的重启。
执行 tempest 某一个测试用例,比如 identity 包下的 test_tenants.py
nosetests tempest/api/identity/admin/test_tenants.py
【Tempest】openstack自动化测试组件tempest及自动化测试工具nose的更多相关文章
- TIB自动化测试快讯 - Appium手机自动化测试学习资料精选
TIB自动化测试快讯 - Appium手机自动化测试学习资料精选 Appium+Android+Javahttp://automationqa.com/forum.php?mod=viewthre ...
- 老李分享:qtp自动化测试框架赏析-关键字自动化测试框架
老李分享:qtp自动化测试框架赏析-关键字自动化测试框架 QTP从2005年继winrunner,robot逐渐退出历史舞台之后,占领主流自动化测试工具市场已经10年之久.当初为了提高在自动化测试 ...
- RobotFramework自动化测试框架-移动手机自动化测试AppiumLibrary介绍
在使用AppiumLibrary库时,需要预先安装好Appium自动化工具,Appium官网地址为:http://appium.io/ Appium的GitHub地址为:https://github. ...
- OpenStack各组件逻辑关系、通信部署关系及工作流程
一. OpenStack组件之间的逻辑关系 OpenStack 是一个不断发展的系统,所以 OpenStack 的架构是演进的,举个例子: E 版本有5个组件 Compute 是 Nova:Imag ...
- Selenium 与自动化测试 —— 《Selenium 2 自动化测试实战》读书笔记
背景 最近在弄 appium,然后顺便发现了 Selenium 框架和这本书,恰好这本书也介绍了一些软件测试&自动化测试的理论知识,遂拿过来学习学习.所以本文几乎没有实践内容,大多都是概念和工 ...
- Openstack Sahara组件和架构简介
1.简介 Apache Hadoop是目前被广泛使用的主流大数据处理计算框架,Sahara项目旨在使用用户能够在Openstack平台上便于创建和管理Hadoop以及其他计算框架集群,实现类似AWS的 ...
- OpenStack基础组件安装keystone身份认证服务
域名解析 vim /etc/hosts 192.168.245.172 controller01 192.168.245.171 controller02 192.168.245.173 contro ...
- 八、OpenStack—Cinder组件安装
一.安装和配置控制器节点 1.先决条件 1)创建数据库 # mysql -u root -p 2)创建cinder数据库 MariaDB [(none)]> CREATE DATABASE ci ...
- 二、OpenStack—keystone组件介绍与安装
一.Keystone介绍 keystone 是OpenStack的组件之一,用于为OpenStack家族中的其它组件成员提供统一的认证服务,包括身份验证.令牌的发放和校验.服务列表.用户权限的定义等等 ...
随机推荐
- MyBatis框架的使用及源码分析(十三) ResultSetHandler
在PreparedStatementHandler中的query()方法中,用ResultSetHandler来完成结果集的映射. public <E> List<E> que ...
- Confluence代码块(Code Block)宏
有时候现在wiki上插入代码,如何让代码高亮,变的有颜色,下面这篇文章可能会帮助你,先看下django代码高亮效果图 代码块(Code Block)宏允许你在 Confluence 页面中显示代码,并 ...
- Linux 使用代理使网速变快
$ export http_proxy="http://USER:PASSWORD@PROXY_SERVER:PORT" $ export https_proxy="ht ...
- bzoj 2762: [JLOI2011]不等式组——树状数组
旺汪与旺喵最近在做一些不等式的练习.这些不等式都是形如ax+b>c 的一元不等式.当然,解这些不等式对旺汪来说太简单了,所以旺喵想挑战旺汪.旺喵给出一组一元不等式,并给出一个数值 .旺汪需要回答 ...
- bzoj 1776: [Usaco2010 Hol]cowpol 奶牛政坛——树的直径
农夫约翰的奶牛住在N (2 <= N <= 200,000)片不同的草地上,标号为1到N.恰好有N-1条单位长度的双向道路,用各种各样的方法连接这些草地.而且从每片草地出发都可以抵达其他所 ...
- Python 关于时间和日期函数使用 -- (转)
python中关于时间和日期函数有time和datatime 1.获取当前时间的两种方法: import datetime,time now = time.strftime("%Y-%m ...
- java和C和C++关系
java和C以及C++ 直接关联,java继承了C的语法,java的对象模型是从C++改编而来的.java和C以及C++关系之所以重要,下面几个就是原因: ①如果一个程序员熟悉C以及C++语法,那么他 ...
- 报错注入遇到ERROR 1242 (21000): Subquery returns more than 1 row解决方案
我的SQL语句是这样写的. mysql> select 1,2,3 and updatexml(1,concat(1,(select user from mysql.user),1),1);ER ...
- github新建托管项目及上传项目
一.新建托管项目 1.注册: 2.点击new repositories新建一个新项目: 3.输入项目名称及项目描述,Create repository: 4.点击右边栏的剪切板图标,记录下你的项目地址 ...
- Optimizing TLB entries for mixed page size storage in contiguous memory
A system and method for accessing memory are provided. The system comprises a lookup buffer for stor ...