有没有办法使用 Python Nose (nosetests) 只运行 doctests?. 我不想运行任何单元测试,而只想运行 doctest。
谢谢。
您可以忽略所有常规测试文件来实现该效果。这可以使用-I
or--ignore-files
选项和正则表达式(如.*\.py
.
另一种方法可能是将文档测试保存在单独的目录中并在其上启动鼻子。
在较新版本的鼻子中,这似乎不再起作用。
这应该适用于较新版本的nose
,但我尚未在嵌套模块上对其进行测试。
echo 'import '"$PACKAGE"', inspect; print("\n".join(x[0] for x in inspect.getmembers('"$PACKAGE"', inspect.ismodule)))' | python | xargs -L 1 --replace echo "$PACKAGE.{}" | nose $(cat) --with-doctest
如果您知道一种更简单的方法来提取模块列表以进行 doctest(也许使用鼻子?),那么这就是第一部分真正要做的事情。