正在关注 these posts ,我已经设法在 django 中运行我的 doctest:
# myapp/tests.py
import doctest
def load_tests(loader, tests, ignore):
tests.addTests(doctest.DocTestSuite())
return tests
然后运行:
python manage.py tests
但是,由于我习惯于使用简单的命令测试我的(非 django)脚本:
py.test --doctest-modules -x
我现在很困惑:
- 测试程序在第一次失败后没有停止(我的好东西
-x
)(所以我得到了很多结果,我每次都需要一直回滚到第一个问题) - 选项
# doctest: +ELLIPSIS
默认未设置。
我如何从这个 django load_tests()
钩子(Hook)设置这种选项?
最佳答案
好的,我知道了。 Options flags像 ELLIPSIS
或 FAIL_FAST
可以是
作为 DocTestSuite 的 optionflags
参数提供.
结合它们的正确方法,如报道here , 是 bitwise OR他们:)
所以下面的确实有效:
# myapp/tests.py
import doctest
def load_tests(loader, tests, ignore):
tests.addTests(doctest.DocTestSuite(
optionflags=doctest.ELLIPSIS | doctest.FAIL_FAST))
return tests
关于python-3.x - 在 django doctesting 时设置测试选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49183751/