• 接口自动化测试中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

  • 相关阅读:
    EXTJS 基本使用
    EXTJS 常用控件的使用
    EXTJS 验证与表单提交
    EXTJS 常用方法
    禁用USB移动盘的方法
    常用sql 函数练习示例
    .Net 中的反射(反射特性) Part.3
    Delphi調用.NET的WebService
    c#写的串口通讯
    打印控制
  • 原文地址:https://www.cnblogs.com/testertechnology/p/10978709.html
Copyright © 2020-2023  润新知