nosetests фиксирует выходные данные моих операторов печати.Как это обойти?

StackOverflow https://stackoverflow.com/questions/5975194

  •  12-11-2019
  •  | 
  •  

Вопрос

Когда я печатаю

$ nosetests -v mytest.py

все мои выходные данные для печати записываются, когда все тесты проходят успешно.Я хочу видеть результаты печати, даже если все проходит успешно.

Итак, что я делаю, так это принудительно вызываю ошибку утверждения, чтобы увидеть выходные данные, вот так.

class MyTest(TestCase):

    def setUp(self):
        self.debug = False

    def test_0(self):
        a = .... # construct an instance of something
        # ... some tests statements
        print a.dump()
        if self.debug:
            eq_(0,1)

Это кажется таким халтурным, что должен быть способ получше.Просвети меня, пожалуйста.

Это было полезно?

Решение

Любой:

$ nosetests --nocapture mytest.py

Или:

$ NOSE_NOCAPTURE=1 nosetests mytests.py

(это также может быть указано в nose.cfg файл, смотрите nosetests --help)

Другие советы

Использование

--nologcapture 
.

Это работало для меня

Это было добавлено недавно к носу вместо --nocapture сделать это:

nosetests -s

Чтобы интегрировать с http://travis-ci.org Я положил это в .travis.yml :

script:  "python setup.py nosetests -s"
.


где setup.py содержит:

setup(
    ...
    tests_require=['nose>=1.0'],
    test_suite='nose.collector',
)
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top