Python日志处理详解
Posted HQYJ_
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python日志处理详解相关的知识,希望对你有一定的参考价值。
在自动化测试中,可以自己根据项目的要求,自定义日志字段,也可以使用python中logging模块定义日志。
主要使用日志的作用也可以分为三部分:程序调试、了解软件程序运行情况、软件程序运行故障分析与问题定位,我们自动化测试中引入日志也是同样的道理。
一、 自定义日志模块
可以根据具体情况自定义日志中的字段,比如时间、文件、测试用例名称,测试用例名称,预期结果,实际结果等信息。在测试用例中需要写日志的地方调用该方法写入相应的数据即可。
1. 创建python环境下的自定义日志模块
自定义日志模块,在功能上虽然不如专业的模块好,但是可以方便自定义输出,在我们自动化测试工作中也可以尝试使用。
2. 在需要输出日志位置,导入创建的日志模块,并调用方法
3. 查看日志文件内容
二、logging日志模块
logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等,相比print()直接打印在控制台,具备如下优点:
可以通过设置不同的日志等级
可以只输出重要信息,而不必显示大量的调试信息
logging则可以由开发者决定将信息输出到什么地方,以及怎么输出。
1. 封装logging日志模块
封装基础logging模块函数,在自动化脚本中调用即可,可以定义为类或方法,便于调用使用即可
2. 在测试用例需要输出日志的位置,调用该方法记录日志。
3、解决日志中的中文乱码问题
在Python安装目录的/lib/logging/下,修改__init__.py模块的如下代码,将encoding的默认值改为utf-8即可。
4. 配置logging的几种方式
1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数;
2)创建一个日志配置文件,然后使用fileConfig()函数来读取该文件的内容;
3)创建一个包含配置信息的dict,然后把它传递个dictConfig()函数;
5. 向日志输出中添加上下文信息
除了传递给日志记录函数的参数外,有时候我们还想在日志输出中包含一些额外的上下文信息。比如,在一个网络应用中,可能希望在日志中记录客户端的特定信息,如:远程客户端的IP地址和用户名。这里我们来介绍以下几种实现方式:
· 通过向日志记录函数传递一个extra参数引入上下文信息
· 使用LoggerAdapters引入上下文信息
· 使用Filters引入上下文信息
免费编程资料: 学习交流群:399932895
快速学习python基础
以上是关于Python日志处理详解的主要内容,如果未能解决你的问题,请参考以下文章
Python-logging详解(彩色日志扩展,多进程安全等)
python接口自动化(四十)- logger 日志 - 下(超详解)
python接口自动化(四十)- logger 日志 - 下(超详解)