Python中的unittest和logging
今天使用Python的unittest模块写了些单元测试,现记录下要点:
使用unittest的基本格式如下:
import unittest class Test(unittest.TestCase):
def setUp(self):
pass def test_a(self):
pass def test_b(self):
pass def tearDown(self):
pass if __name__ == '__main__':
unittest.main()
基本上网上已经已经说的很详细了,在使用过程中发现以下几点比较重要:
1.unittest执行顺序,对于每一个test,都要先执行setUp,再执行tearDown,并不是setUp执行完一次就了事了,对以上格式,setUp和tearDown应该执行两次,而不是一次
2.每一个test是按照函数名的字母顺序来执行的,换言之,对以上格式而言,即使将test_a,test_b交换位置,仍然是先执行test_a,再执行test_b
3.assert方法异常丰富,除了最基本的assertEqual,assertFalse,还有assertIs,assertIsNotNone等
4.1 在unittest中要查看更详细的信息,可以print,但是较不方便,可配置使用logging:
import logging logging.basicConfig(filename='/Users/wenli.xu/Desktop/log1.log', level=logging.INFO)
其中,filename指示了日志路径,level指示了只有严重程度大于等于INFO才会被日志记录(logging的默认level是WARNING)。
严重程度从轻到重依次为:DEBUG,INFO,WARNING,ERROR,CRITICAL
此后使用以下方法,可将关键信息输出到相应的文件中:
logging.info('important info: %s', info)
若使用logging.debug('XXX'),消息不会被记录在日志里。
4.2 使用logging.getLogger('log_name')可以得到root logger(logging)的实例,可在logger里进行各种个性化的设置
Python中的unittest和logging的更多相关文章
- [ Python入门教程 ] Python中日志记录模块logging使用实例
python中的logging模块用于记录日志.用户可以根据程序实现需要自定义日志输出位置.日志级别以及日志格式. 将日志内容输出到屏幕 一个最简单的logging模块使用样例,直接打印显示日志内容到 ...
- Python中的日志管理Logging模块
1.基本的用法 import logging logging.debug('This is debug message') logging.info('This is info message') l ...
- python中的unittest库
1.unittest框架是python自动化测试的入门框架,它是python自带的一个模块 包含以下几个子模块 测试用例:TestCase 测试集:TestSuite 加载用例:TestLoader ...
- python中的日志模块logging
1.日志级别5个: 警告Warning 一般信息Info 调试 Debug 错误Error 致命Critical 2.禁用日志方法 logging.disable(logging.DEBUG) 3 ...
- python中的Unittest常用方法
import unittest class SimpleUnitTest(unittest.TestCase): def test_Fail(self): self.failUnless(True) ...
- Python中的单元测试模块Unittest快速入门
前言 为什么需要单元测试? 如果没有单元测试,我们会遇到这种情况:已有的健康运行的代码在经过改动之后,我们无法得知改动之后是否引入了Bug.如果有单元测试的话,只要单元测试全部通过,我们就可以保证没有 ...
- Python中的logging模块
http://python.jobbole.com/86887/ 最近修改了项目里的logging相关功能,用到了python标准库里的logging模块,在此做一些记录.主要是从官方文档和stack ...
- python中的第三方日志模块logging
基本上每个系统都有自己的日志系统,可以使自己写的,也可以是第三方的.下面来简单介绍一下python中第三方的日志模块,入手还是比较简单的,但是也很容易给自己埋雷. 下面是我参考的资料链接 入手demo ...
- python 中logging模块
logging的作用:python中,logging模块主要是处理日志的.所谓日志,可理解为在软件运行过程中,所记录的的一些运行情况信息,软件开发人员可以根据自己的需求添加日志,日志可以帮助软件开发人 ...
随机推荐
- Linux显示目前登入系统的用户信息
Linux显示目前登入系统的用户信息 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ who youhaidong :0 2015-01-26 22:43 (: ...
- Centos运行Mysql因为内存不足进程被杀
今天刚刚申请了一个新的域名,在申请完域名刚准备绑定给小伙伴分享注册新域名的喜悦时,刚把网站发到我们小伙伴们的讨论群里,却发现访问不了了,提示,数据库连接失败! 真的时一个尴尬..... 所有人都 ...
- 为你揭露2018微信公开课pro的12个重点
为你揭露2018微信公开课pro的12个重点 1月15日,微信公开课Pro版现场,微信又为我们带来了一些重磅消息,小程序依旧是本次微信公开课Pro的绝对重点.小编为大家整理了公开课的12个重点,带大家 ...
- ListView 无 DataSource 依然用 DataPager 翻页
ListView 有 DataSource 使用 DataPager 翻页ListView 无 DataSource 使用 DataPager 翻页问题描述点击两次才能翻页返回上一页,内容为空解决方法 ...
- 搭建基于eclipse的纯的JavaWeb项目
-----------2016.9.9--------------------- 步骤: 1.搭建一个Java项目 2,字该项目下新建一个文件夹,表示根,名字为webapp(name随意) 3,在we ...
- OSS Android SDK
Android SDK开发包(2014-12-20) 版本号0.2.2 开发包下载地址: http://oss.aliyuncs.com/aliyun_portal_storage/help/o ...
- 【BZOJ4805】欧拉函数求和(杜教筛)
[BZOJ4805]欧拉函数求和(杜教筛) 题面 BZOJ 题解 好久没写过了 正好看见了顺手切一下 令\[S(n)=\sum_{i=1}^n\varphi(i)\] 设存在的某个积性函数\(g(x) ...
- opacity 与rgba区别
rgba(r,g,b,a) rgba(r,g,b,a) r,g,b分别是颜色r g b的值(0-255),a表示透明度(0-1). opacity: value: opacity: value; va ...
- 28.Django cookie
概述 1.获取cookie request.COOKIES['key'] request.COOKIES.get('key') request.get_signed_cookie(key, defau ...
- CyQ.data MDataTable
前言 以前一两个月才出一篇,这三天有点变态地连续1天1篇(其实都是上周末两天写好的存货). 短期应该没有新的和此框架相关的文章要写了,这应该是最后一篇,大伙且看且珍惜. 前两篇讲数据库读写分享和分布式 ...