#python #unit-testing #typeerror
#python #модульное тестирование #ошибка типа
Вопрос:
Я не совсем понимаю это, следующий код отлично работает с Python 2.6
if __name__ == '__main__':
suite = unittest.TestSuite()
suite.addTest(TestMrdfWriter("testParParser"))
suite.addTest(TestMrdfWriter("testMrdfWriter"))
unittest.TextTestRunner(verbosity=2).run(suite())
Однако с Python 2.4 я получаю следующую ошибку
> Traceback (most recent call last): File "./src/TestMrdfWriter.py",
> line 42, in ?
> unittest.TextTestRunner(verbosity=2).run(suite()) File "/home/producer/python2.4/lib/python2.4/unittest.py", line 428, in
> __call__
> return self.run(*args, **kwds) TypeError: run() takes exactly 2 arguments (1 given)
Есть идеи?
Ответ №1:
Я не думаю, что код работает и в Python2.6. Это должно быть
unittest.TextTestRunner(verbosity=2).run(suite)
без круглых скобок после suite
.
Комментарии:
1. спасибо, что это была проблема, хм, странно, что все работало нормально при запуске через модуль eclipse PyDev