zoukankan      html  css  js  c++  java
  • selenium--记录日志信息

    前戏

    在我们进行web自动化的时候,我们希望记录下日志信息,方便我们进行定位分析,我们可以使用logging模块来进行记录

    实战

    先写个配置文件Logger.conf来管理日志的配置

    [loggers]
    keys=root,example01,example02
    [logger_root]
    level=DEBUG
    handlers=hand01,hand02
    [logger_example01]
    handlers=hand01,hand02
    qualname=example01
    propagate=0
    [logger_example02]
    handlers=hand01,hand03
    qualname=example02
    propagate=0
    #######################################
    [handlers]
    keys=hand01,hand02,hand03
    [handler_hand01]
    class=StreamHandler
    level=DEBUG
    formatter=form01
    args=(sys.stderr,)
    [handler_hand02]
    class=FileHandler
    level=DEBUG
    formatter=form01
    args=('d:\AutoTestLog.log','a')
    [handler_hand03]
    class=handlers.RotatingFileHandler
    level=INFO
    formatter=form01
    args=('d:\AutoTestLog.log','a',10*1024*1024,5)
    #####################################################
    [formatters]
    keys=form01,form02
    [formatter_form01]
    format=%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s
    detefmt=%Y-%m-%d %H:%M:%S
    [formatter_form02]
    format=%(name)-12s: %(levelname)-8s %(message)s
    detefmt=%Y-%m-%d %H:%M:%S

    在写个Log.py文件来管理日志的级别

    import logging.config
    
    logging.config.fileConfig("Logger.conf")
    
    
    def debug(message):
        # 打印debug级别的日志方法
        logging.debug(message)
    
    
    def warning(message):
        # 打印warning级别的日志方法
        logging.warning(message)
    
    
    def info(message):
        # 打印info级别的日志方法
        logging.info(message)

    最后再我们的脚本里写日志信息

    from selenium import webdriver
    import unittest
    from Log import *
    
    class TestSoGouSearch(unittest.TestCase):
        def setUp(self):
            self.driver=webdriver.Chrome()
    
        def testSoGouSearch(self):
            info(u'=======搜索=======')
            url='http://www.sogou.com'
            self.driver.get(url)
            info('访问sogou首页')
            import time
    
            time.sleep(3)
            self.driver.find_element_by_id('query').send_keys('自动化测试')
            info('在搜索框中输入自动化测试')
            self.driver.find_element_by_id('stb').click()
            info('单击搜索按钮')
            info('=====测试用例执行结束=====')
        def tearDown(self):
            self.driver.quit()
    
    if __name__=='__main__':
        unittest.main()

    执行SoGou.py文件后,会在本地磁盘D盘中生成一个日志文件AutoTestLog.log

  • 相关阅读:
    在JS中如何去掉千分号
    JS中showModalDialog详细使用
    js里的insertCell和appendChild的区别
    js showModalDialog
    js中innerHTML,innerText,outerHTML的用法和区别
    MYSQL入门指导
    对拍程序C语言实现
    人性的弱点
    POJ3207(2SAT)
    期末考试时间安排
  • 原文地址:https://www.cnblogs.com/zouzou-busy/p/11285789.html
Copyright © 2011-2022 走看看