Python3 基础:单元测试
2017-01-09 16:29
302 查看
为了编写单元测试,我们需要引入Python自带的
编写单元测试时,我们需要编写一个测试类,从
以
另一种重要的断言就是期待抛出指定类型的Error,比如通过d[‘empty’]访问不存在的key时,断言会抛出KeyError:
而通过d.empty访问不存在的key时,我们期待抛出AttributeError:
然后正常运行测试脚本就可以了。
另一种方法是在命令行通过参数
unittest模块。
编写单元测试时,我们需要编写一个测试类,从
unittest.TestCase继承。
以
test开头的方法就是测试方法,不以test开头的方法不被认为是测试方法,测试的时候不会被执行。
unittest.TestCase提供了很多内置的条件判断 :
self.assertEqual(abs(-1), 1) # 断言函数返回的结果与1相等
另一种重要的断言就是期待抛出指定类型的Error,比如通过d[‘empty’]访问不存在的key时,断言会抛出KeyError:
with self.assertRaises(KeyError): value = d['empty']
而通过d.empty访问不存在的key时,我们期待抛出AttributeError:
with self.assertRaises(AttributeError): value = d.empty
运行单元测试
最简单的运行方式是在单元测试py文件中加上:if __name__ == '__main__': unittest.main()
然后正常运行测试脚本就可以了。
另一种方法是在命令行通过参数
-m unittest直接运行单元测试,这是推荐的做法,因为这样可以一次批量运行很多单元测试,并且,有很多工具可以自动来运行这些单元测试。
setUp与tearDown
可以在单元测试中编写两个特殊的setUp()和tearDown()方法。这两个方法会分别在每调用一个测试方法的前后分别被执行。
相关文章推荐
- Python基础-单元测试-unittest.TestCase(setUp和tearDown)
- python基础===单元测试unittest
- python单元测试基础举例
- python基础——单元测试
- 征服Python—语言基础与典型应用
- Python基础篇
- Python游戏:语言基础和技术
- 单元测试基础知识
- python模块之bsddb: bdb高性能嵌入式数据库 1.基础知识
- 学习Python基础
- Python基础 (2) - 输入读入input, raw_input
- 使用SWIG和Python对C/C++进行单元测试(一)
- Silverlight2的单元测试——基础
- Python基础篇1
- 【Python开发web】(3) -- Python基础之一
- Python基础 (3) - String, Long String, Raw String
- 单元测试基础知识
- python基础学习笔记分享版(1)
- 单元测试基础知识(转)
- [Python]类的基础知识