python3+requests接口自動化-日誌封裝

1.logger.py這個文件放到common目錄下,封裝日誌文件的讀取測試

2.日誌保存到logs文件夾spa

3.封裝代碼debug

 1 import logging  2 import os  3 import time  4 
 5 
 6 # log_path是日誌存放路徑地址
 7 get_path = os.path.dirname(os.path.abspath(__file__))  8 log_path = os.path.join(os.path.dirname(get_path),"log")  9 
10 
11 # 若是不存在這個logs文件夾,就自動建立一個
12 if not os.path.exists(log_path):os.mkdir(log_path) 13 
14 class Log(): 15     def __init__(self): 16         # 文件的命名
17         self.logname = os.path.join(log_path,"%s.log"%time.strftime("%Y:%m:%d")) 18         self.logger = logging.getLogger() 19  self.logger.setLevel(logging.DEBUG) 20         # 日誌輸出格式
21         self.formatter = logging.Formatter('[%(asctime)s] - %(filename)s] - %(levelname)s: %(message)s') 22 
23     def __console(self,level,message): 24 
25     # 建立一個FileHandler,用於寫到本地
26         fh = logging.FileHandler(self.logname,"a",encoding='utf-8') # 追加模式
27  fh.setLevel(logging.DEBUG) 28  fh.setFormatter(self.formatter) 29  self.logger.addHandler(fh) 30 
31         # 建立一個StreamHandler,用於輸出到控制檯
32         ch = logging.StreamHandler() 33  ch.setLevel(logging.DEBUG) 34  ch.setFormatter(self.formatter) 35  self.logger.addHandler(ch) 36 
37         if level == "info": 38  self.logger.info(message) 39         elif level == "debug": 40  self.logger.debug(message) 41         elif level == "warning": 42  self.logger.warning(message) 43         elif level == "error": 44  self.logger.error(message) 45 
46         # 這兩行代碼是爲了不日誌輸出重複問題
47  self.logger.removeHandler(ch) 48  self.logger.removeHandler(fh) 49 
50         # 關閉打開的文件
51  fh.close() 52 
53     def debug(self,message): 54         self.__console("debug",message) 55 
56     def info(self,message): 57         self.__console("info",message) 58     def warning(self,message): 59         self.__console("warning",message) 60     def error(self,message): 61         self.__console("error",message) 62 
63 if __name__ == "__main__": 64     log = Log() 65     log.info("--測試開始--") 66     log.info("操做步驟1,2,3") 67     log.warning("--測試結束--")
相關文章
相關標籤/搜索