怎么在unittest中使用 logging 模块记录测试数据

本篇文章为大家展示了怎么在unittest中使用 logging 模块记录测试数据,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

如下所示:

# -*- coding:utf-8 -*-
import sys
import logging
import unittest
import os

reload(sys)
sys.path.append(os.path.dirname(os.path.abspath(__file__)) + r'\..') # 返回脚本的路径
logging.basicConfig(level=logging.DEBUG,
     format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s',
     datefmt='%a, %d %b %Y %H:%M:%S',
     filename='log_test.log',
     filemode='w')
logger = logging.getLogger()


class SomeTest(unittest.TestCase):
 def testSomething(self):
  logger.debug("this= %r", 'aaa')
  logger.debug("that= %r", 'bbb')
  # etc.
  self.assertEquals(3.14, 3.14, 'nonono')

if __name__ == "__main__":
 unittest.main()

生成的日志文件内容如下:

Wed, 17 May 2017 15:04:53 log_test.py[line:19] DEBUG this= 'aaa'
Wed, 17 May 2017 15:04:53 log_test.py[line:20] DEBUG that= 'bbb'

PyDev unittesting: How to capture text logged to a logging.Logger in “Captured Output”

上述内容就是怎么在unittest中使用 logging 模块记录测试数据,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。