学习16天:pytest学习

一、python读取ini文件和yaml文件

1、ini做配置文件

pip install configparser

举例:

setting.ini

python 复制代码
[host]
api_sit_url= http://admin.study.com


[mysql]
MYSQL_HOST=471.11.51.16
MYSQL_PORT=3306
MYSQL_USER=vue_shop
MYSQL_PASSWD=study
MYSQL_DB=vue_shop

再编写python文件read_ini.py文件

python 复制代码
import configparser
import os
import yaml

ini_path = os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))), "config", "settings.ini")
data_path=os.path.join(os.path.dirname(os.path.dirname(os.path.realpath(__file__))),"data","data.yaml")

class FlieRead:

    def __init__(self):
        self.data_path=data_path
        self.ini_path =ini_path


    def read_ini(self):
        config = configparser.ConfigParser()
        config.read(ini_path, encoding='utf8')
        return config


    def read_yanl(self):
        f = open(data_path, encoding='utf8')
        data = yaml.safe_load(f)
        return data

base_data=FlieRead()

二、日志配置logging配置

等级由低到高:

  • debug
  • info
  • warning
  • error

创建log_util.py文件,再创建log文件夹,存放日志

python 复制代码
import logging
import os
import time
# 找到项目的主目录
rootpath = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
# 再到log文件下
logpath = os.path.join(rootpath,"log")

if not os.path.exists(logpath):
    os.mkdir(logpath)

class Logger:
    def __init__(self):
        #定义日志位置和文件名
        self.logname = os.path.join(logpath, "{}.log".format(time.strftime("%Y-%m-%d")))
        # 定义一个日志容器
        self.logger = logging.getLogger("log")
        # 设置日志打印的级别
        self.logger.setLevel(logging.DEBUG)
        # 创建日志输入的格式
        self.formater = logging.Formatter(
        '[%(asctime)s][%(filename)s %(lineno)d][%(levelname)s]: %(message)s')
        # 创建日志处理器,用来存放日志文件
        self.filelogger = logging.FileHandler(self.logname, mode='a', encoding="UTF-8")
        # 创建日志处理器,在控制台打印
        self.console = logging.StreamHandler()
        # 设置控制台打印日志界别
        self.console.setLevel(logging.DEBUG)
        # 文件存放日志级别
        self.filelogger.setLevel(logging.DEBUG)
        # 文件存放日志格式
        self.filelogger.setFormatter(self.formater)
        # 控制台打印日志格式
        self.console.setFormatter(self.formater)
        # 将日志输出渠道添加到日志收集器中
        self.logger.addHandler(self.filelogger)
        self.logger.addHandler(self.console)

logger = Logger().logger

if __name__ == '__main__':
    logger.info("---测试开始---")
    logger.debug("---测试结束---")
相关推荐
山土成旧客6 分钟前
【Python学习打卡-Day40】从“能跑就行”到“工程标准”:PyTorch训练与测试的规范化写法
pytorch·python·学习
Yyuanyuxin6 分钟前
保姆级学习开发安卓手机软件(一)--安装软件及配置
学习
●VON42 分钟前
跨模态暗流:多模态安全攻防全景解析
人工智能·学习·安全·von
星火开发设计1 小时前
C++ map 全面解析与实战指南
java·数据结构·c++·学习·算法·map·知识
副露のmagic2 小时前
更弱智的算法学习 day25
python·学习·算法
强子感冒了2 小时前
Java 学习笔记:File类核心API详解与使用指南
java·笔记·学习
别了,李亚普诺夫2 小时前
USB拓展坞-PCB设计学习笔记
笔记·学习
崇山峻岭之间2 小时前
Matlab学习记录30
开发语言·学习·matlab
朔北之忘 Clancy2 小时前
2020 年 6 月青少年软编等考 C 语言一级真题解析
c语言·开发语言·c++·学习·算法·青少年编程·题解
saoys3 小时前
Opencv 学习笔记:一文掌握四种经典图像滤波(均值 / 高斯 / 中值 / 双边)
笔记·opencv·学习