python logging 学习-实例
上一篇 /
下一篇 2015-11-06 09:04:35
/ 个人分类:python+selenium
原来做selenium测试一直都是自己写日志文件,偶然看到
python自带的
logging模块,
学习了一下,分享一下。
方法一:
将logging封装成函数,用以别的文件调用。
# -*- coding: utf-8 -*- import logging,time,os import logging.handlers
def log(): logger=logging.getLogger() day=time.strftime("%Y-%m-%d") parentdir=os.path.dirname(os.path.dirname(os.path.dirname(__file__))) logname=parentdir+"\\log\\"+day+"_log"+".txt" logging.basicConfig(filename=logname, level=logging.INFO, format='%(asctime)s %(levelname)s : %(message)s', datefmt='%Y-%m-%d %H:%M:%S', filemode='w', encoding='utf-8') console=logging.StreamHandler() console.setLevel(logging.INFO) formatter=logging.Formatter("%(asctime)s %(levelname)s : %(message)s","%Y-%m-%d %H:%M:%S") console.setFormatter(formatter) logger.addHandler(console) return logger if __name__=="__main__": logger=log() logger.error("test") logger.info("test2") logger.info("test3") |
方法二:
将logging封装成类。
# -*- coding: utf-8 -*- import logging,time,os,sys import HTMLTestRunner
logger=logging.getLogger() class addLog: def __init__(self): #self.logger=logging.getLogger() day=time.strftime("%Y-%m-%d") parentdir=os.path.dirname(os.path.dirname(os.path.dirname(__file__))) logname=parentdir+"\\log\\"+day+"_log"+".txt" logging.basicConfig(filename=logname, level=logging.INFO, format='%(asctime)s %(levelname)s : %(message)s', datefmt='%Y-%m-%d %H:%M:%S', filemode='w', encoding='utf-8') console=logging.StreamHandler() console.setLevel(logging.INFO) formatter=logging.Formatter("%(asctime)s %(levelname)s : %(message)s","%Y-%m-%d %H:%M:%S") console.setFormatter(formatter) #self.logger.addHandler(console) logger.addHandler(console) def log(self): #return self.logger return logger if __name__=="__main__": logger=addLog().log() logger.info(u"日志") logger.info(u"日志2") logger.info(u"日志3") |
在附加一个
测试文件,调用logging
# -*- coding: utf-8 -*- import sys sys.path.append("\public") from public import * from selenium import webdriver import time,unittest import xlrd,random from selenium.common.exceptions import *
class testlog(unittest.TestCase): def setUp(self): pass #self.driver=login().init() def test_log(self): logger=log() logger.info(u"测试") logger.error(u"测试2") logger.info(u"测试3") def tearDown(self): pass #self.driver.quit()
|
收藏
举报
TAG:
Python
python
logging