2

我正在尝试将其nosetests用作基于distutils2(使用setup.cfg文件而不是“旧”setup.py脚本)的构建/发布链的一部分。

不幸的是,当我发出:

pysetup run test

我得到:

running test
running build
running build_py

----------------------------------------------------------------------
Ran 0 tests in 0.000s

OK

...但是,如果我nosetests从同一个位置发出,我可以看到我的所有测试都在执行。我的目录结构如下:

|-- docs
|-- my_package
|   |-- __init__.py
|   |-- foobar.py
|   `-- tests
|       `-- foobar_test.py
|-- README.md
|-- requirements.txt
`-- setup.cfg

setup.cfg我的文件的相关部分包含:

[test]
runner = nosetests

我究竟做错了什么?官方文档在这一点上并不完美......

4

1 回答 1

1

您是否尝试过:

pysetup run test --runner=nosetests

我有同样的问题,在我看来 distutils2 并不太关心我在 [test] 部分输入的内容(我可以写任何东西,它永远不会引发错误)。

无论如何它也不会运行,因为 --runner 和 --suite 选项都需要一个模块。

我能够运行测试的唯一方法是使用我放入包中的“run_tests.py like”模块,然后调用:

pysetup run test --suite=package_were_tests_runner_is.run_tests
于 2012-09-25T21:23:52.563 回答