nose.collector在哪里寻找测试?

时间:2015-05-17 00:31:43

标签: python setuptools nose

我想使用nose.collector作为setuptools的测试套件,如here所述。我的软件包来源位于mypackage/src,我在mypackage/tests进行了测试。我有setup.py看起来像这样:

import setuptools

setuptools.setup(
    name='mypackage',
    version='1.2.3',
    package_dir={'': 'src'},
    packages=setuptools.find_packages('src'),
    tests_require=['nose'],
    test_suite='nose.collector',
    provides=setuptools.find_packages('src'),
)

但是,当我运行python setup.py test时,它不会测试任何内容:

$ python setup.py test
running test
running egg_info
writing src/mypackage.egg-info/PKG-INFO
writing top-level names to src/mypackage.egg-info/top_level.txt
writing dependency_links to src/mypackage.egg-info/dependency_links.txt
reading manifest file 'src/mypackage.egg-info/SOURCES.txt'
writing manifest file 'src/mypackage.egg-info/SOURCES.txt'
running build_ext

----------------------------------------------------------------------
Ran 0 tests in 0.002s

OK

如何判断nose在哪里寻找测试?到目前为止,我一直在做nosetests -d tests,这很好。但是我想更改为使用setuptools,以便我可以遵循python setup.py test约定。

2 个答案:

答案 0 :(得分:0)

来自文档

  

在setuptools下运行时,您可以通过设置配置鼻子设置   nosetests脚本用法消息中详细说明的环境变量,   或者setup.cfg,〜/ .noserc或〜/ .nose.cfg配置文件。

http://nose.readthedocs.org/en/latest/setuptools_integration.html

答案 1 :(得分:0)

使用chmod -x $(find tests/ -name '*.py')

修复它们