2015-09-10 7 views
0

С кодомnosetests: --nologcapture все еще захватывает Инф.сообщения

import unittest 
import logging 

class LoggingTest(unittest.TestCase): 

    def test_that_logs(self): 
     logging.warning("Hello") 
     logging.info("World") 
     for a in xrange(100000000000000000): 
      pass 

я получаю этот неожиданный выход:

$ nosetests --version 
nosetests version 1.3.7 
$ nosetests log_from_nosetest.py --nocapture --nologcapture 
WARNING:root:Hello 
^C 
---------------------------------------------------------------------- 
Ran 1 test in 105.376s 

OK 

Как можно видеть. Выдается сообщение уровня журнала WARNING, но не INFO level one.

Я пробовал использовать --logging-levelsetting, но безуспешно.

ответ

1

Кажется, что отсутствует функция. Если --nologcapture задано, нос просто игнорирует всю настройку регистрации, например. Уровень -logging не используется вообще. Вы можете исправить это с

logging.basicConfig(level=logging.INFO)

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

1

Это связано с тем, что уровень журнала по умолчанию является предупреждением. Установите его с помощью

logging.getLogger('').setLevel(logging.INFO) 

 Смежные вопросы

  • Нет связанных вопросов^_^