您的位置:首页 > 编程语言 > Python开发

Python3 基础:单元测试

2017-01-09 16:29 302 查看
为了编写单元测试,我们需要引入Python自带的
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 单元测试 测试