宝宝心里苦,但是宝宝只能在这穷乡僻壤说,下周又要开组会必须得干点事了。这次是做论文中的实验部分,主要利用到了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的更多相关文章

  1. TIB自动化测试快讯 - Appium手机自动化测试学习资料精选

    TIB自动化测试快讯 - Appium手机自动化测试学习资料精选   Appium+Android+Javahttp://automationqa.com/forum.php?mod=viewthre ...

  2. 老李分享:qtp自动化测试框架赏析-关键字自动化测试框架

    老李分享:qtp自动化测试框架赏析-关键字自动化测试框架   QTP从2005年继winrunner,robot逐渐退出历史舞台之后,占领主流自动化测试工具市场已经10年之久.当初为了提高在自动化测试 ...

  3. RobotFramework自动化测试框架-移动手机自动化测试AppiumLibrary介绍

    在使用AppiumLibrary库时,需要预先安装好Appium自动化工具,Appium官网地址为:http://appium.io/ Appium的GitHub地址为:https://github. ...

  4. OpenStack各组件逻辑关系、通信部署关系及工作流程

    一. OpenStack组件之间的逻辑关系 OpenStack 是一个不断发展的系统,所以 OpenStack 的架构是演进的,举个例子: E 版本有5个组件  Compute 是 Nova:Imag ...

  5. Selenium 与自动化测试 —— 《Selenium 2 自动化测试实战》读书笔记

    背景 最近在弄 appium,然后顺便发现了 Selenium 框架和这本书,恰好这本书也介绍了一些软件测试&自动化测试的理论知识,遂拿过来学习学习.所以本文几乎没有实践内容,大多都是概念和工 ...

  6. Openstack Sahara组件和架构简介

    1.简介 Apache Hadoop是目前被广泛使用的主流大数据处理计算框架,Sahara项目旨在使用用户能够在Openstack平台上便于创建和管理Hadoop以及其他计算框架集群,实现类似AWS的 ...

  7. OpenStack基础组件安装keystone身份认证服务

    域名解析 vim /etc/hosts 192.168.245.172 controller01 192.168.245.171 controller02 192.168.245.173 contro ...

  8. 八、OpenStack—Cinder组件安装

    一.安装和配置控制器节点 1.先决条件 1)创建数据库 # mysql -u root -p 2)创建cinder数据库 MariaDB [(none)]> CREATE DATABASE ci ...

  9. 二、OpenStack—keystone组件介绍与安装

    一.Keystone介绍 keystone 是OpenStack的组件之一,用于为OpenStack家族中的其它组件成员提供统一的认证服务,包括身份验证.令牌的发放和校验.服务列表.用户权限的定义等等 ...

随机推荐

  1. spring怎么实现单例模式?

    Spring学习之路——单例模式和多例模式   在Spring中,bean可以被定义为两种模式:prototype(多例)和singleton(单例) singleton(单例):只有一个共享的实例存 ...

  2. NSObject class和NSObject protocol的关系(抽象基类与协议)

    [转载请注明出处] 1.接口的实现 对于接口这一概念的支持,不同语言的实现形式不同.Java中,由于不支持多重继承,因此提供了一个Interface关键词.而在C++中,通常是通过定义抽象基类的方式来 ...

  3. Mac 上真机调试cocos2d-x-3.16的test程序

    文章比较长,一个算是新手又不是新手的程序员的解决过程. 一 xcode中打开项目 首先,下载完成cocos2d-x-3.16之后,解压,然后在根目录build目录下双击cocos2d_tests.xc ...

  4. python初步学习-python数据类型-列表(list)

    列表 list 在 python 中具有非常强大的功能 定义 在python中,用方括号表示一个list:[] 在方括号里面,可以是 int,也可以是 str类型的数据,甚至也可以是Flase/Tru ...

  5. bzoj 1006 MCS算法

    根据陈丹琪的论文弦图与区间图,求出弦图的完美消除序列之后,反向给每个点染可以染的最小的颜色,这样可以使用最少的颜色染色,染色的方案即为队伍数. 那么我们需要求该图的完美消除序列,使用MCS算法,从后向 ...

  6. socket编程中write、read和send、recv之间的区别~转载

    socket编程中write.read和send.recv之间的区别   http://blog.csdn.net/petershina/article/details/7946615 一旦,我们建立 ...

  7. Perl6 Bailador框架(5):利用正则匹配路径

    use v6; use Bailador; =begin pod 我们在路径设置上, 可以利正则表达式捕获的字符串作为子例程参数 =end pod get '/perl6/(.+)' => su ...

  8. Python大牛开小灶,一对一问答

    CSDN知识小饭桌 大牛开小灶 小范围,高质量,在线交流QA 参与嘉宾   知识库特邀编辑伊海波,滴滴出行工程师,曾任龙图龙图游戏数据分析部技术负责人.CSDN博客专家,资深Python/Golang ...

  9. Linux进程调度与源码分析(一)——简介

    本系列文章主要是近期针对Linux进程调度源码进行阅读与分析后的经验总结,分析过程中可能结合部分Linux网络编程的相关知识以便于理解,加深对Linux进程调度的理解和知识分享. 本系列文章主要结合L ...

  10. Lodash使用示例(比较全)

    <html> <head> <meta name="viewport" content="width=device-width" ...