zoukankan      html  css  js  c++  java
  • logging模块结合unittest使用

    今天和大家分享一个用在测试框架中的一个日志打印方法,希望大家可以多多评论指教,分享学习;

    一、首先定义一个日志方法

    import os
    import logging

    current=os.path.dirname(__file__)
    loginfopath=os.path.join(current,'../log/info_logs.txt')

    class LogPrint:
    def __init__(self):
    """
    创建一个日志对象

    """
    self.looger=logging.getLogger(__name__)

    """
    给日志设置级别

    """
    self.looger.setLevel(level=logging.INFO)

    """
    创建一个日志格式对象

    """
    self.formater=logging.Formatter('Info:%(asctime)s - %(name)s - %(levelname)s - %(message)s')

    """
    创建一个FileHandler的对象

    """
    console=logging.FileHandler(loginfopath)

    """
    给日志设置格式

    """

    console.setFormatter(self.formater)

    """
    logger日志对象加载FileHandler对象

    """
    self.looger.addHandler(console)

    def logsinfo(self,message):

    """
    日志输出

    """
    self.looger.info(message)

    Log=LogPrint()

    小窍门:

    Log=LogPrint() 在日志中创建一个对象,这样在别的模块引用起来会非常的方便;

    二、引用

    import unittest
    from action.login_action import LoginAction
    from common.selenium_base_case import SeleniumBaseCase
    from common.log_print import Log


    class Logintest(SeleniumBaseCase):

    def setUp(self) -> None:
    super().setUp()
    Log.logsinfo('登录测试用例开始')

    def test_success_login(self):
    '''登录成功测试用例'''
    login_action=LoginAction(self.basepage.driver)
    main_page=login_action.suceseelogin('admin','a12345678')
    actual_result=main_page.get_username()
    self.assertEqual(actual_result,'admin','登录成功用例执行失败')

    def tearDown(self) -> None:
    super().tearDown()
    Log.logsinfo('登录测试用例结束')


    日志子类常用的三种子类:
    StreamHandler 控制台输出日志
    FileHandler 日志输出到文件
    TimedRotatingFileHandler 日志分割

    logging模块基础简介可参考此博客:
    地址:
    https://www.cnblogs.com/dream66/p/12825148.html?from=timeline&isappinstalled=0
  • 相关阅读:
    【译】.NET 的新的动态检测分析
    【译】Visual Studio 的 Razor 编辑器的改进
    【译】.NET 5. 0 中 Windows Form 的新特性
    MySQL InnoDB 索引(Index)
    MySQL 全文检索(Full-Text Search)
    MySQL 计算最大值、最小值和中位数
    MySQL 触发器(Triggers)
    MySQL 视图(View)
    MySQL基础知识:MySQL String 字符串处理
    MySQL基础知识:MySQL Connection和Session
  • 原文地址:https://www.cnblogs.com/HMeier/p/12846340.html
Copyright © 2011-2022 走看看