20191011-构建我们公司自己的自动化接口测试框架-Config配置
Config模块主要是为了存放的一些其他配置等的一个目录,当前目录存放日志配置文件
################################################ [loggers] keys=root,example01,example02 [logger_root] level=DEBUG handlers=hand01,hand02 [logger_example01] handlers=hand01,hand02 qualname=example01 propagate=0 [logger_example02] handlers=hand01,hand03 qualname=example02 propagate=0 ############################################### [handlers] keys=hand01,hand02,hand03 [handler_hand01] class=StreamHandler level=DEBUG formatter=form01 args=(sys.stderr,) [handler_hand02] class=FileHandler level=DEBUG formatter=form01 args=('C:\\Users\\HYJ\\Desktop\\Onapi\\Log\\AutomationTestLog.log', 'a') [handler_hand03] class=handlers.RotatingFileHandler level=INFO formatter=form01 args=('C:\\Users\\HYJ\\Desktop\\Onapi\\Log\\AutomationTestLog.log', 'a', 10*1024*1024, 5) ############################################### [formatters] keys=form01,form02 [formatter_form01] format=%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s datefmt=%Y-%m-%d %H:%M:%S [formatter_form02] format=%(name)-12s: %(levelname)-8s %(message)s datefmt=%Y-%m-%d %H:%M:%S
以配置的形式定义日志的格式,输出目录,输出内容等
对应的log.py文件如下:
#encoding=utf-8 # logging模块学习网站:https://cloud.tencent.com/developer/article/1354396 import logging.config import logging from ProVar.ProjConfigVar import * logging.config.fileConfig(conf_path) logger = logging.getLogger("example01") # loggers : 配置logger信息。必须包含一个名字叫做root的logger,当使用无参函数logging.getLogger()时,默认返回root这个logger,其他自定义logger可以通过 logging.getLogger("fileLogger") 方式进行调用 # handlers:定义声明handlers信息。常用的handlers包括 StreamHandler(仅将日志输出到kong控制台)、FileHandler(将日志信息输出保存到文件)、RotaRotatingFileHandler(将日志输出保存到文件中,并设置单个日志wenj文件的大小和日志文件个数) # formatter : 设置日志格式 # logger_xxx : 对loggers中声明的logger进行逐个配置,且要一一对应 # handler_xxx : 对handlers中声明的handler进行逐个配置,且要一一对应 # formatter_xxx : 对声明的formatterjinx进行配置 #日志配置文件:多个logger,每个logger,指定不同的handler #handler:设定了日志输出行的格式 #handler:以及设定写日志到文件(是否回滚)?还是到屏幕 #handler:还定了打印日志的级别。 def debug(message): # 打印debug级别的日志方法 print ("debug") logger.debug(message) def warning(message): # 打印warning级别的日志方法 logger.warning(message) def info(message): # 打印info级别的日志方法 logger.info(message) def error(message): #打印error级别的日志错误 logging.error(message) if __name__=="__main__": debug("hi") info("gloryroad") warning("hello")