Я пытаюсь использовать TDD (разработка через тестирование) с pytest. pytest не будет print на консоль, когда я использую print.
Я использую pytest my_tests.py для его запуска.
documentation говорит, что она должна работать по умолчанию: http://pytest.org/latest/capture.html
Но:
import myapplication as tum
class TestBlogger:
@classmethod
def setup_class(self):
self.user = "alice"
self.b = tum.Blogger(self.user)
print "This should be printed, but it won't be!"
def test_inherit(self):
assert issubclass(tum.Blogger, tum.Site)
links = self.b.get_links(posts)
print len(links) # This won't print either.
Ничего не выводится на мою стандартную консоль вывода (только обычный прогресс и сколько тестов пройдено/не выполнено).
И скрипт, который я тестирую, содержит print:
class Blogger(Site):
get_links(self, posts):
print len(posts) # It won't get printed in the test.
В модуле unittest все печатается по умолчанию, и это именно то, что мне нужно. Тем не менее, я хочу использовать pytest по другим причинам.
Кто-нибудь знает, как заставить показывать операторы печати?