前戏
在我们进行 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
来源: http://www.bubuko.com/infodetail-3460674.html