1.首先在根目录中新建一个Logs文件夹,写入文件
2.在framework文件夹中写入logger.py
3.在testsuits文件夹中写入test_log.py
logger.py
1 # _*_ coding: utf-8 _*_ 2 import logging 3 import os.path 4 import time 5 6 7 class Logger(object): 8 def __init__(self, logger): 9 """ 10 指定保存日志的文件路径,日志级别,以及调用文件 11 将日志存入到指定的文件中 12 :param logger: 13 """ 14 # 创建一个logger 15 self.logger = logging.getLogger(logger) 16 self.logger.setLevel(logging.DEBUG) 17 18 # 创建一个handler,用于写入日志文件 19 rq = time.strftime('%Y%m%d%H%M', time.localtime(time.time())) 20 log_path = os.path.dirname(os.getcwd()) + '/Logs/' 21 log_name = log_path + rq + '.log' 22 fh = logging.FileHandler(log_name) 23 fh.setLevel(logging.INFO) 24 25 # 再创建一个handler,用于输出到控制台 26 ch = logging.StreamHandler() 27 ch.setLevel(logging.INFO) 28 29 # 定义handler的输出格式 30 formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') 31 fh.setFormatter(formatter) 32 ch.setFormatter(formatter) 33 34 # 给logger添加handler 35 self.logger.addHandler(fh) 36 self.logger.addHandler(ch) 37 38 def getlog(self): 39 return self.logger
test_log.py
1 # coding=utf-8 2 import time 3 from selenium import webdriver 4 from unittest3.framework.logger import Logger 5 6 mylogger = Logger(logger='TestMyLog').getlog() 7 8 9 class TestMyLog(object): 10 def print_log(self): 11 driver = webdriver.Chrome() 12 mylogger.info("打开浏览器") 13 # driver.maximize_window() 14 # mylogger.info("最大化浏览器窗口。") 15 driver.implicitly_wait(8) 16 17 driver.get("https://www.baidu.com") 18 mylogger.info("打开百度首页。") 19 time.sleep(1) 20 mylogger.info("暂停一秒。") 21 driver.quit() 22 mylogger.info("关闭并退出浏览器。") 23 24 25 testlog = TestMyLog() 26 testlog.print_log()