在VirtualBox虚拟机上测试Fabric脚本
项目描述
Fabtest是一组工具和基本测试用例,有助于测试Fabric脚本与VirtualBox虚拟机的兼容性。许可证是MIT。
每次测试前都将虚拟机回滚到初始状态,以便测试可以对目标系统进行任何操作;可以从Python运行Fabric命令。
安装
pip install fabtest
虚拟机
为了运行测试,您需要VirtualBox 4.x和操作系统镜像。镜像应该已经安装了ssh服务器。
示例虚拟机(可以通过File->导入虚拟设备导入VirtualBox)
由于VirtualBox中的错误,最好将导入的.vmdk磁盘镜像转换为.vdi镜像,例如。
VBoxManage clonehd Ubuntu-10.10-disk1.vmdk Ubuntu-10.10-disk.vdi --format VDI
然后从虚拟机中分离(并删除)vmdk磁盘,并附加vdi镜像。
获取镜像后,请确保它没有运行,并执行fabtest-preparevm脚本(向其中传递虚拟机名称或uid)
fabtest-preparevm Lenny
此命令配置端口转发(127.0.0.1:2222到客户端22端口,127.0.0.1:8888到客户端80端口),并使用用于测试回滚的fabtest-initial快照(从启动的机器中获取以加快测试速度)。
编写测试
从fabtest.VirtualBoxTest或fabtest.FabTest中继承并使用fabtest.fab执行fabric命令
from fabric.api import run from fabtest import FabTest, fab def whoami(): return run('whoami') class MyTestCase(FabTest): def test_root_login(self): output = fab(whoami) self.assertEqual(output, 'root')
更多信息请查看源代码(和示例/runtests.py)。
变更日志
0.1.5 (2012-04-19)
改进了针对VirtualBox错误的解决方案。
0.1.4 (2012-04-19)
针对Windows下VirtualBox错误的解决方案。
0.1.3 (2012-04-14)
打包修复。
0.1.1 (2012-03-02)
更好的异常处理(保留原始跟踪信息)。
0.1 (2012-03-01)
支持并需要Fabric >= 1.4;
更可靠的VirtualBox快照处理;
fab函数现在包装fabric的execute并返回单个值,而不是值列表。
0.0.8 (2011-03-22)
许多调整和错误修复。
0.0.1 (2011-02-16)
初始实验性发布版(从 django-fab-deploy 中提取)。
项目详情
关闭
fabtest-0.1.5.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | cd7c86de9f913b5fa0483cc6cb2cd5f61783e5250fcabcc811f338af7a17a7c0 |
|
MD5 | 5c1a3937db356e587113dfbbb9ffe6ab |
|
BLAKE2b-256 | c72a9a886a5e0352e311fc8079e0dff98e6c17c0e1eae6a68b4e52f01be18ce9 |