- 博客(21)
- 收藏
- 关注
原创 Python 中的 fixture 和 fixtures
1 Fixture 概念Fixture是测试中的概念:Fixture 指的是测试中依赖的数据和条件等等Python的 unittest 库提供了对 fixture的一些支持每个TestCase 应该在setUp中, 自己负责资源的创建, 例如class MyTestCase(unittest.TestCase): def my_fixture_setup(self):
2014-09-15 16:05:24 9171
原创 Python 中的 unit test 流程
Python 中的 unit test 流程看了看Python中的单元测试流程, 写了个测试代码来看整体的测试流程总结如下一个 test case 类应该派生自 unittest.TestCase正常的的test case的调用顺序为子类TestCase可以注册自己的清理函数(my_cleanup). 这个清理函数会在teardown之后被调用
2014-09-02 17:59:37 3400
原创 OpenStack中给wsgi程序写单元测试的方法
在 OpenStack 中, 针对web应用, 有三种方法来写单元测试1) 使用webob生成模拟的requestfrom __future__ import print_functionimport webobimport testtoolsdef hello_world(env, start_response): if env['PATH_INFO'] != '/':
2014-09-01 18:56:02 1774
原创 Python中的下划线
总结如下:1) 前带一个"_"的变量: 私有变量. 前面带有一个"_"的变量, 但是并没有真正的封装隐藏, 外部还是可以访问2) 后面带有一个"_"的变量, 为了避免和Python中已有的关键字冲突3) 前后各有两个"_"的变量, 代表Python中的Magic Word_single_leading_underscore: 私有变量. sin
2014-09-01 18:07:53 880
原创 OpenStack中的测试分类
OpenStack中的测试分类可以分为以下的类型:1) 单元测试 (small test / unit tests)单元测试存放在每个组件的代码库中, 比如 nova的单元测试都放在 nova/tests 目录单元测试主要是针对与源码级别的测试. 测试的是函数级别的代码需要数据或者模拟环境? 使用Mock进行模拟unit test一般只针对于public级别的函数2
2014-09-01 16:07:36 2390
原创 [OpenStack] Nova中的线程模型
1) greenlet - python中的协程库1.1) 什么是协程 (Coroutine)Coroutine Wikihttp://en.wikipedia.org/wiki/CoroutineCoRoutine是在Thread基础上的再次切分. 每一个Process可以包含多个Thread, 每个线程包含多个CoRoutine在任何时刻, 同一个Threa
2014-08-27 16:57:19 2850
原创 在 Ubuntu 12.04 上通过源代码安装 Open vSwitch (OVS)
Install Ubuntu 12.04 and update the systemapt-get update; apt-get upgrade;Install dependenciesapt-get install automake autoconf gcc uml-utilities libtoolbuild-essential pkg-config
2014-08-26 10:13:53 3761
原创 OpenStack 之 Nova Compute 的代码结构图
nova-compute 的代码结构图如上图所示, 类图中最重要的三个CategoryManager: 核心的业务类,提供实际的业务操作。例如启动虚拟机等等。Service: 每个service通常包括一个对应的Manager. service 也负责在消息队列上对指定的topic进行监听,当监听到新的RPC消息的时候, 调用对应的Manager的方法。Launch
2014-08-26 00:56:28 1956 1
原创 简单的 Nova REST API 实现程序
正在看Nova API的代码, 仿照其中的REST 实现逻辑写了一个测试程序. 大概的调用顺序是: Python Delopy -- > MyRouter --> routes.middleware.RoutesMiddleware --> MyApplication --> MyController和这个最简单的程序相比, Nova API 支持了更多的功能, 例如XML/JSON序列化
2014-08-22 18:27:07 2159
原创 在 Ubuntu 12.04 上通过安装源安装 Open vSwitch (OVS)
先把Ubuntu 12.04 更新一下sudo apt-get updatesudo apt-get upgradesudo apt-get dist-upgrade 删除 Ebtables 包sudo aptitude purge ebtables从安装源安装Open vSwitch (OVS)sudo apt-get install ap
2014-08-20 18:29:27 3307
原创 扩展 OpenStack 的 REST API 的方法
以Nova REST API为例, 你应该按照以下步骤来扩展 Nova REST API(使用 类nova.api.openstack.compute.contrib.floating_ips.Floating_ips 作为例子) 1) 创建一个新的extension 子类. Extension子类应该派生于“nova.api.openstack.extensions Ext
2014-08-19 17:22:36 4773 1
原创 使用 Python 的 jsonschema 对 json 做验证
在OpenStack中, 使用了Python的 jsonschema包, Python JSON Schema Library https://pypi.python.org/pypi/jsonschema JSON Schema Introductionhttp://json-schema.org/
2014-08-13 18:12:25 9488
原创 Neutron 中的 Provider Network 和 Tenant Network
Provider Network vsTenant NetworkVirtual networksalso are divided into tenant network or provider network. But most of the time,we cannot see much difference between them. If we provide the physic
2014-08-11 17:04:07 11112
原创 subunit 协议
subunit protocolSubunit is a streaming protocol for test results. Subunit Version 2 isa binary protocol consisting of independent packets. The packets that can be embeddedin the output from t
2014-08-07 18:36:03 2501
原创 Python中的 "import" 和 "from ... import"
在python中, 怎么选择使用"import" 或者"from .. import" 呢无论使用哪种import方式, 都必须满足只import module, 不import module中的对象让后面的代码可以直接使用不包含package的module name. Bad (没import module, 而是import了module中的server函数)
2014-08-07 16:16:39 780
原创 OpenStack / Tempest中常用的几个Package
Tempest 的执行流程1) [user] execute “tox” command from terminal2) [tox] load configuration from “tox.ini”, createvirtual environment and invoke testr#tox.inipython setup.py testr --slowest-
2014-08-04 16:31:41 2893 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人