在所有子目录中运行nosetests

时间:2013-11-08 05:57:35

标签: python python-3.x nose

我可以使用workflownosetests文件夹中运行测试:

workflow maks$ nosetests
..........
----------------------------------------------------------------------
Ran 10 tests in 0.093s

OK

我的测试位于test文件夹中:

workflow maks$ ls
__pycache__     iterations.py       test
data            iterationsClass.py  testData
env         iterationsClass.pyc

但是当我搬到父母目录时:

(py3env)Makss-Mac:workflow maks$ cd ..

无法找到测试。

(py3env)Makss-Mac:Packages maks$ nosetests

----------------------------------------------------------------------
Ran 0 tests in 0.005s

OK

那么如何在所有子目录中进行nosetest搜索测试?

2 个答案:

答案 0 :(得分:11)

如果您通过workflow放置__init__.py文件夹,那么鼻子应该可以找到您的测试。

答案 1 :(得分:4)

如果您不想将文件夹设为模块,请将setup.cfg放在要运行的目录nosetests中,该目录会自动将tests选项传递给{{ 1}}指定测试的相对位置。像这样:

nosetests

您还可以使用相同的机制传递多个文件夹/测试:

#setup.cfg contents:

[nosetests]
exe = True
tests = workflow/