1,logging日志工具类使用
import logging
import os
# os.path.abspath(__file__)获取当前执行脚本的绝对路径
# os.path.dirname()获取当前文件,文件夹的路径
base_dir=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# os.path.join拼接两字符串,只拼接
log_path=os.path.join(base_dir,'logs')
# 不存在就新建
if not os.path.exists(log_path):
os.makedirs(log_path)
log_file=os.path.join(log_path,'api_test.log')
# 日志配置
# 日志级别
# DEBUG:调试信息(最详细)
# INFO:普通信息
# WARNING:警告
# ERROR:错误
# CRITICAL:严重错误
logging.basicConfig(
level=logging.DEBUG, # 设为DEBUG,所有级别都能输出
# 格式化
format="%(asctime)s | %(levelname)-8s | %(filename)s:%(lineno)d | %(message)s",
handlers=[
logging.FileHandler(log_file, encoding="utf-8"), #输出到文件
logging.StreamHandler() #输出到控制台
]
)
# 获取当前模块的日志器,__name__ 是 Python 自带变量,值 = 当前 .py 文件的模块名
logger = logging.getLogger(__name__)
# ===== 4个标准级别(完整)=====
def log_debug(msg):
"""调试日志(开发用)调试参数、变量、临时打印"""
logger.debug(msg)
def log_info(msg):
"""信息日志(流程记录)开始请求、请求成功、用例通过"""
logger.info(msg)
def log_warning(msg):
"""警告日志(不影响运行)数据不存在、参数为空、接口响应慢"""
logger.warning(msg)
def log_error(msg):
"""错误日志(失败/异常)请求失败、断言失败、接口报错"""
logger.error(msg)
2,各模块导入进行调用…………………………………………………………………………………………
from auto_test.utils.log_utils import log_info,log_debug,log_warning,log_error
log_error("这有一个错误")
log_warning("这有一个警告")
log_info("信息显示")
log_debug("详细信息")