[英]How do I run a single nosetest via setup.py in the python-active-directory module?
我顽固地尝试将 Python 模块https://github.com/theatlantic/python-active-directory转换为 Python 3。你可以在这里看到我的努力https://github.com/nbmorgan/python-active-directory/树/master3 。
我想出了以下几点,我可以通过以下任一方式在克隆项目中运行测试套件:
export TEST_CONF_NAME="test.conf" ; python setup.py test
export TEST_CONF_NAME="test.conf" ; python setup.py test
或export TEST_CONF_NAME="../test.conf" ; python setup.py nosetests
这将创建一个巨大的输出,顶部的第一个简单测试。 我曾尝试使用 setup 或 nosetest 帮助中描述的几种形式的 run single test 变体,但我通常会遇到module not found
错误或某些test not defined
变体。
如果有人可以指向我的命令行,让我只运行: test_client.TestADClient.test_domains
,那就太棒了。
现在我正在使用: export TEST_CONF_NAME="../test.conf" ; python setup.py nosetests 2>&1 | cat -n | head -80 | tail -31
export TEST_CONF_NAME="../test.conf" ; python setup.py nosetests 2>&1 | cat -n | head -80 | tail -31
export TEST_CONF_NAME="../test.conf" ; python setup.py nosetests 2>&1 | cat -n | head -80 | tail -31
这很俗气,但让我知道了信息。
我要感谢作者进行了测试——这使得对重构的冷酷方法成为可能。 我不是 Python 模块构建器,只是试图提供帮助的模块用户。
是否需要使用setup
运行? 我像这样运行某些测试:
nosetests tests/core/test_client.py:TestADClient.test_search --collect
.
----------------------------------------------------------------------
Ran 1 test in 0.000s
OK
但实际运行失败,因为测试使用 pytest 固定装置(测试的 conf 参数)。 所以你需要使用 pytest 运行它。
$ pytest tests/core/test_client.py::TestADClient::test_search -vv
============================ test session starts ============
...
collected 1 item
tests/core/test_client.py::TestADClient::test_search SKIPPED [100%]
看起来像一个副本:
如何使用“pip install”运行单元测试? 我前段时间回答过。
但是 - setup.py test
已被弃用,所以我不会将它用于新的开发。
看看: https : //setuptools.readthedocs.io/en/latest/setuptools.html#test-build-package-and-run-a-unittest-suite
因此,对于新项目,我建议使用 makefile。
make install
make test
make clean
# etc ...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.