python + pytest单元测试框架(一)
pytest简介
pytest是一个使构建简单和可扩展测试变得容易的框架。测试具有表现力和可读性-不需要样板代码。数分钟内即可开始为您的应用程序或库进行小型单元测试或复杂的功能测试。
安装pytest
1.再命令行中运行以下命令:
pip install -U pytest
# python3.6+pytest5.x会有问题,建议使用 pip install pytest==4.5.0
2.检查是否安装成功
$ pytest --version
This is pytest version 5.3.1, imported from d:\python\python\python37\lib\site-packages\pytest.py
3.在pycharm配置pytest并运行程序
pytest测试样例规范
- 测试文件以test_开头(或以_test结尾)
- 测试类以Test开头,并且不能带有__init__方法
- 测试函数以test_开头
- 断言使用基本的assert即可
示例
def func(x):
return x + 1
def test_answer():
assert func(3) == 5
运行:在pycharm底部的Terminal中输入指令:pytest test_sample1202.py
结果:该测试返回失败报告,因为func(3)没有返回5。assert-断言
- 以“安静”报告模式执行测试功能
在pycharm底部的Terminal中输入指令:pytest -q test_sample1202.py - 也可以在pycharm中通过调用pytest – 默认是运行当前py文件所在目录下的所有测试文件
import pytest
def func(x):
return x + 1
def test_answer():
assert func(3) == 5
if __name__ == '__main__':
pytest.main()