pytest单元测试基本使用

Posted 幼儿园里的扛把子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytest单元测试基本使用相关的知识,希望对你有一定的参考价值。

一.pytest安装

pip install pytest:安装

pip install pytest==version:指定版本安装

pytest --version:查看版本

pip install -u pytest:更新

pip install pytest-html:安装html报告插件

pytest --html=url:生成html报告

二.定义文件,类,函数规范

1.定函数时,函数名字前加个test_,如:def test_one:  print "xxxxx"

2.定义class的时候Test...,以Test开头,如:Testclasee

3.定义.py文件的时候以test_开头,如:test_case

三.pytest常用参数

pytest -h:查看帮助

pytest --collect-only package名:收集要运行文件中的哪些函数,但是不运行

pytest -v package名:-v可查看具体哪个文件下的哪个函数运行错误或失败

pytest -k “函数1 or 函数2”:指定一些test_函数运行

pytest -m “参数“  package名:指定参数运行函数(可在函数上方标记参数@pytest.mark.参数)

pytest -x package:遇到一个错误时停止运行(在-x 后加个-v可查看具体哪个文件下的哪个函数运行错误或失败)

pytest --maxfail=x   package名:设置最大错误数,当运行错误大于x后停止运行

pytest -s package名:打印函数中的print显示在命令行

pytest --lf package名:显示运行错误的函数信息

pytest --ff package名:正确的错误的都显示出来

5.fixture

1.pytest.fixture可用在普通函数上面,test_函数引用时可直接使用函数名引用返回值

2.fixture优先级运行

(1).在根目录下新建配置文件conftest.py

(2)在conftest.py文件下编写运行前后的程序

所有用例运行前后

每个文件.py运行前后

每个class运行前后

每个function运行前后

6.parametrize参数化(数据驱动)

若参数场景过多时可以导入csv文件或连接数据库

7.pytest-order排序

(1).安装

pip install pytest-order

(2).编写

可定义在class和function上,数字也可为-1,-2,-3,-表示倒数运行

若编写好运行顺序后需要在中间插入一条case,before=“函数名”

 

以上是关于pytest单元测试基本使用的主要内容,如果未能解决你的问题,请参考以下文章

pytest基本使用

Selenium3自动化测试38单元测试Pytest

44-pytest-单元测试覆盖率

代码质量保证-单元测试框架pytest

如何在 pytest 中保持单元测试和集成测试分开

python 一些使用pytest功能的单元测试示例