一、pytest简介
Pytest是python的一种单元测试框架。
pytest的特点:
- 入门简单,文档丰富
- 支持单元测试,功能测试
- 支持参数化,重复执行,部分执行,测试跳过
- 兼容其他测试框架(nose,unittest 等)
- 支持生成html报告
- 可集成CI环境(Jenkins 等)
- 第三方插件丰富,良好的自定义扩展性
二、pycharm中使用pytest
1、pytest安装:对于测试而言,特别是在持续集成环境中,我们的所有测试最好是在虚拟环境中。这样不同的虚拟环境中的测试不会相互干扰的。
进入虚拟环境,进行安装
pip install pytest
2、编写单元测试用例:
def test_one(): print u'方法一' x = 'this' assert 'h' in x def test_two(): print u'方法二' a = 5 assert a > 6
pytest框架下,文件的命名规则如下:
-
所有单侧文件名都需要满足test_.py格式或_test.py格式。
-
在单侧文件中, 可以包含test_开头的函数,也可以包含Test开头的类。
-
在单侧类中,可以包含一个或多个test_开头的函数。
3、运行测试用例:
方法一:
# cmd中 cd到 test_class.py所在文件夹 # 运行 该文件夹中所有测试用例 pytest # 或者 py.test # 运行指定测试用例,加上-q参数用来指定执行的文件 pytest -q test_class.py
pytest运行规则:
查找当前目录及其子目录下以test_.py或_test.py文件,
找到文件后,在文件中找到以test开头函数并执行。
方法二:
现在pycharm中配置:
Setting->Tools->Python Integrated Tools->项目名称->Default test runner->选择py.test或pytest。
第一次设置时会提示无法找到该文件,这时点击右侧的‘Fix’按钮进行安装即可。
配置完成之后,点击函数左侧的Run绿色按钮即可运行该函数: