Я использовал протокол unittest
load_tests()
, потому что я хочу, чтобы мои автоматические тесты включали doctest
, но только для одного модуля.Это прекрасно работает, когда обнаруживается и запускается с помощью unittest, но не работает, если вместо этого запускается nose
.
import doctest
import unittest
import my.module
suite = doctest.DocTestSuite(my.module)
def load_tests(loader, std, pat): # invoked by unittest discovery process
return suite
Ошибка:
Traceback (most recent call last):
File "/g/data/w85/brl654/conda/envs/haz/lib/python2.7/site-packages/nose/case.py", line 197, in runTest
self.test(*self.arg)
TypeError: load_tests() takes exactly 3 arguments (0 given)
Если я сделаю эти аргументы необязательными, будет ли nose
запускать тесты?Есть ли лучший способ интегрировать этот набор тестов, чтобы он мог запускаться либо unittest
, либо nose
?