python+appium自动化测试-输出日志到控制台&文件

一、日志的作用

在项目开发及测试中,日志能够帮助准确的定位问题,且进行问题的分析

二、日志级别

在这里插入图片描述

优先级为:DEBUG<INFO<WARNING<ERROR<CRITICAL

日志的默认级别是warning级别及以上,debug和info都不会再控制台输出

三、几个重要的概念

  • Logger 记录器:提供日志的接口,供应用代码使用
  • Handle 处理器:将(记录器产生的)日志记录发送到哪里,即输出到哪里
  • Filter 过滤器:提供了更好的粒度控制,它可以决定输出哪些日志记录,提供一种优雅的方式决定一个日志记录是否发送到handle
  • Formatter 格式化器:指定日志记录输出的具体格式

四、Logger 记录器

1、概述

是一个树形层级结构,在使用接口debug、info、warning、error、critical之前必须创建Logger实例,即创建一个记录器,如果没有显式上的进行创建,则默认创建一个root logger,并应用默认的日志级别(warn),处理器Handle(StreamHandle,即将日志信息打印输出在标准输出上),和格式化器Formatter(默认的格式即为第一个简单实用程序中输出的格式)。

创建的方法:logger = logging.getLogger(logger_name)

Logger对象从不直接实例化,而是通过模块级别的功能

Logging.getLogger(name)创建logger实例,调用logging.getLogger(name)功能时,如果传入的name参数值相同,则总是返回一个logger对象实例的应用。

2、创建Logger实例后,可以用以下方法进行日志级别设置,增加处理器Handle

  • logger.setLevel(logging.ERROR) = 设置日志级别为ERROR,即只有日志级别大于等于ERROR的日志才会输出(默认级别是warning)
  • logger.addHandle(handle_name) = 为Logger实例增加一个处理器
  • logger.removeHandle(handle_name) = 为Logger实例删除一个处理器

五、Handle 处理器

1、概述

handle 将日志信息发送到指定的位置(文件、窗口)

Handle处理器的类型:StreamHandle,FileHandle,NullHandle

2、StreamHandle

创建方法:sh = logging.StreamHandle(stream==None)

将日志输出发送到控制台

3、FileHandle

将日志记录发送到磁盘文件,它继承了StreamHandle的输出功能

创建方法:fh = logging.FileHandle(filename,mode=‘a’,encoding=None,delay=False)

4、NullHandle

不做任何格式化或输出,它本质上是一个开发人员使用的“无操作”处理程序

本质上是一个“什么都不做”的handle,由库开发者使用

六、Formatter 格式化器

1、概述

用于设置日志的输出格式

创建方法:formatter = logging.Formatter(fmt=None,datefmt=None),fmt和datefmt是用来设置日志格式和时间格式

默认的格式:%(asctime)s-%(levelname)s-%(message)s

默认的时间格式:%Y-%m-%d %H:%M:%S

2、使用Formatter对象设置日志信息最后的规则、结构和内容

在这里插入图片描述

七、日志在实际测试用例中的应用

封装类有便于外部文件对日志的调用,例子主要完成在控制台输出日志和日志输出到外部的.log文件中

封装日志类的步骤:

创建 logger

创建 handle

创建 formatter

配置 logger

上栗子:

1.在工程目录下创建类的外部log文件:test.log

2.封装Logger类:

# 日志综合案例的封装
import logging

class Logger():
    def 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值