Перспектива PyDev PyUnit правильно отображает выходные данные моих модульных тестов, когда я запускаю их как «модульный тест Python» из модуля, в котором они живут, с этим базовым шаблоном использования:
import unittest
class MyTest(unittest.TestCase):
def test_something(self):
pass
if __name__ == '__main__':
unittest.main()
Однако, когда я импортирую тесты из другого модуля, вот так ...
import unittest
import mypackage.mytests
if __name__ == '__main__':
unittest.main(module=mypackage.mytests)
... тесты не проводятся. Когда я запускаю тот же модуль, что и «Python Run» или из терминала, он ведет себя правильно, поэтому по какой-то причине перспектива PyUnit не загружает тесты правильно. Я получаю те же результаты с этим альтернативным методом:
import unittest
import mypackage.mytests
tests = unittest.TestLoader().loadTestsFromModule(mypackage.mytests)
unittest.TextTestRunner().run(tests)
Есть ли другой способ импортировать модуль, содержащий производные классы TestCase, и заставить PyDev захватить выходные данные тестера?