我想在Python中运行Nose builtin Doctest
插件,特别是没有命令行选项或环境变量。
人们可以期待以下工作:
import nose, os
from nose.plugins.builtin import Doctest
# or from nose.plugins.doctests import Doctest
plugins = [Doctest(),]
nose.main(addplugins=plugins)
# or nose.main(plugins=plugins)
但是上面似乎没有按预期加载Doctest插件。
将不胜感激的想法和意见。
答案 0 :(得分:2)
这是我做的:
import nose
argv = sys.argv[:]
argv.insert(1, "--with-doctest")
nose.main(argv=argv)
它不像我想的那么干净,但它有效。
答案 1 :(得分:1)
基于Brian的解决方案,还可以为了从交互式会话启动所有内容,执行以下操作:
import nose
nose.run(argv=['', '--with-doctest']) # first empty item is ignored by nose.run
但是您的解决方案更适合直接从命令行启动的脚本,可能还有其他选项。