接口自动化测试中logging实际用法

pycharm中创建两个方法:

 

 

具体实现:logg.py

# -*- coding:utf-8 -*-

import logging

import time

import os.path

class Log:

def __init__(self):

# 第一步,创建一个logger

self.logger = logging.getLogger()

self.logger.setLevel() # Log等级总开关

# 第二步,创建一个handler,用于写入日志文件 -Handler 处理器,将(记录器产生的)日志记录发送至合适的目的地

handler = logging.FileHandler(os.path.join("/Users/lvguangyi/PycharmProjects/Demo/log", "output.log"))

# # 第三步,定义handler的输出格式 Formatter 格式化器,指明了最终输出中日志记录的布局

formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

# 使用Formatter对象设置日志信息最后的规则、结构和内容,默认的时间格式为%Y-%m-%d %H:%M:%S

handler.setFormatter(formatter)

# 第四步,将logger添加到handler里面 #为Logger实例增加一个处理器

self.logger.addHandler(handler)

# logging.debug("详细信息,典型地调试问题时会感兴趣。");

# ("打证明事情按预期工作");

# logging.warning("表明发生了一些意外,或者不久的将来会发生问题(如‘磁盘满了’)。软件还是在正常工作。")

# logging.error("由于更严重的问题,软件已不能执行一些功能了")

# logging.critical("严重错误,表明软件已不能继续运行了。");

def get_logger(self,message):

self.logger.error(message)

# 日志输出

# 通过下面的方式进行简单配置输出方式与日志级别-目录下生成了logger.log文件存放日志

# logging.basicConfig(filename='logger.log', level=)

# 通过上述配置方法都可以配置那些信息?

# Logger 记录器,暴露了应用程序代码能直接使用的接口。

# Handler 处理器,将(记录器产生的)日志记录发送至合适的目的地。

# Filter 过滤器,提供了更好的粒度控制,它可以决定输出哪些日志记录。

# Formatter 格式化器,指明了最终输出中日志记录的布局

# 创建方法:

# logger = logging.getLogger(logger_name)

# 设置项目

# logger.setLevel(logging.ERROR) # 设置日志级别为ERROR,即只有日志级别大于等于ERROR的日志才会输出

# logger.addHandler(handler_name) # 为Logger实例增加一个处理器

# logger.removeHandler(handler_name) # 为Logger实例删除一个处理器

if __name__ == '__main__':

log=Log();

log.get_logger("ddd")

logone.py调用

#-*- coding:utf-8 -*-

from log import logg

loginfo=logg.Log()

loginfo.get_logger("aaa")

运行实际结果:

2019-05-14 13:41:52,893 - root - ERROR - aaa

2019-05-14 13:42:02,727 - root - ERROR - aaa

posted @ 2019-06-05 11:43  Albert_tester  阅读(532)  评论(0编辑  收藏  举报