nosetests:如何显示自定义日志记录

时间:2017-01-02 09:42:31

标签: python logging nose

我有以下python文件fct.py.如果我直接在python或ipython中运行test1()或test2(),我得到:

In [315]: test1()
fct - fct.py[line:9] 2017-01-02 17:23:22,992 : DEBUG :  debug output

In [316]: test2()
fct - fct.py[line:9] 2017-01-02 17:23:26,393 : DEBUG :  debug output    

如果我跑

nosetests -v fct.py

我明白了:

test1 logging ... ok
test2 logging ... ok
Ran 2 tests in 0.000s

OK    

没有记录输出"调试输出"。

如何获取日志消息" debug output"在鼻子测试?我读了一下nosetests -h和google,但似乎无法找到解决方案。感谢您的帮助或指示。

''' fct.py ''' 
import logging

LOGGER = logging.getLogger(__name__)
LOGGER.addHandler(logging.NullHandler())

def fct():
    ''' fct logging '''
    LOGGER.debug(" debug output")

def test1():
    ''' test1 logging '''
    fct()
    assert 1==1

def test2():
    ''' test2 logging '''
    logging.basicConfig(level=logging.DEBUG)
    fct()
    assert 1==1

1 个答案:

答案 0 :(得分:1)

nosetests --nologcapture fct.py

会做的伎俩