如何使用内部使用另一个插件的蓝图测试新的cloudify插件?

时间:2018-07-25 10:11:54

标签: cloudify

我正在开发一个新的cloudify插件,可以在插件模板之后使用tox,nosetests和@workflow_test装饰器进行测试。

我想测试该插件与另一个插件(特别是openstack插件)的交互作用。因此,我正在使用一个蓝图,该蓝图将导入我的插件(测试yaml文件)和openstack yaml文件,然后从我的插件和openstack定义一些节点。

问题是我收到模块python导入错误,因为在tox / nosetests创建的测试环境中找不到openstack插件。我在运行鼻子测试之前尝试使用wagon安装插件,但是安装失败。

任何人都可以指示我该怎么做?

1 个答案:

答案 0 :(得分:1)

您是否尝试过需求文件?在tox.ini文件中,您应该可以这样定义测试要求:

[testenv:py27]
deps =
    -rdev-requirements.txt
    -rtest-requirements.txt

然后将分支zip的URL(例如master)放入您的test-requirements.txt文件中:

https://github.com/cloudify-cosmo/cloudify-openstack-plugin/archive/master.zip
nose>=1.3
tox

通常,我发现workflow_test并不是很有用,通常我最终出于相同的目的而写了其他东西。例如,这些功能在此测试基础中基本上具有相同的作用: https://github.com/cloudify-incubator/cloudify-ecosystem-test/blob/791f02a27313ac0b63b029c66ead333cb17c4d9c/ecosystem_tests/init.py#L100 https://github.com/cloudify-incubator/cloudify-ecosystem-test/blob/791f02a27313ac0b63b029c66ead333cb17c4d9c/ecosystem_tests/init.py#L151 https://github.com/cloudify-incubator/cloudify-ecosystem-test/blob/791f02a27313ac0b63b029c66ead333cb17c4d9c/ecosystem_tests/init.py#L225