当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python unittest.TestCase.assertLogs用法及代码示例


用法:

assertLogs(logger=None, level=None)

一个上下文管理器,用于测试至少一条消息记录在 logger 或其一个子节点上,至少具有给定的 level

如果给定,logger 应该是一个 logging.Logger 对象或一个 str 给出记录器的名称。默认是根记录器,它将捕获所有未被非传播后代记录器阻止的消息。

如果给定,level 应该是数字日志记录级别或其等效字符串(例如 "ERROR"logging.ERROR )。默认值为 logging.INFO

如果在with 块内发出的至少一条消息与loggerlevel 条件匹配,则测试通过,否则测试失败。

上下文管理器返回的对象是一个记录助手,它跟踪匹配的日志消息。它有两个属性:

records

匹配日志消息的logging.LogRecord 对象列表。

output

带有匹配消息的格式化输出的str 对象列表。

例子:

with self.assertLogs('foo', level='INFO') as cm:
   logging.getLogger('foo').info('first message')
   logging.getLogger('foo.bar').error('second message')
self.assertEqual(cm.output, ['INFO:foo:first message',
                             'ERROR:foo.bar:second message'])

3.4 版中的新函数。

相关用法


注:本文由纯净天空筛选整理自python.org大神的英文原创作品 unittest.TestCase.assertLogs。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。