这两天突然想把遗忘已久的pytest总结下,有些东西时间长了真的就忘了,所以今天花了一小时回顾了下,在这总结下加深印象,废话不多说,开始。。。

1.先简单介绍下pytest,他的优点是什么,为什么这么流行?**

pytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点:
a.简单灵活,容易上手
b.支持参数化
c.能够支持简单的单元测试和复杂的功能测试,
d.还可以用来做selenium/appnium等自动化测试、接口自动化测试(pytest+requests)
e.具有很多第三方插件,据说还可以自定义扩展,像我经常使用的pytest-html(完美html测试报告生成)、pytest-rerunfailures(失败case重复执行)后面这几个我还没用过{pytest-xdist(多CPU分发),
测试用例的skip和xfail处理}
f.可以和jenkins集成,而且allure也支持pytest

插件地址:https://plugincompat.herokuapp.com

通过以上,可以看到功能真的特别强大,下面开始我的总结之旅:

2.pytest的常见命令

a.查看 pytest 版本
pytest --version

pytest框架使用总结(基本命令1)
b.显示可用的内置函数参数
pytest --fixtures

pytest框架使用总结(基本命令1)
c.通过命令行查看帮助信息及配置文件选项
pytest --help(比较常用的命令)

d. 出现2个失败就终止测试
pytest --maxfail=2

e.运行模块中的指定用例
pytest pytest_test.py::test_begin

pytest框架使用总结(基本命令1)

f.运行模块中类下面的指定用例
pytest pytest_test.py::TestCase::test_01_sum

pytest框架使用总结(基本命令1)
h.根据指定的标签名运行
pytest -m "标签名"

pytest框架使用总结(基本命令1)

标签需要在pytest.ini中进行注册:
pytest框架使用总结(基本命令1)
然后在测试用例中使用,使用的标记方式为:
pytest框架使用总结(基本命令1)

i.模糊匹配
pytest -k "div"

pytest框架使用总结(基本命令1)

pytest -k “MyClass and not method” 匹配的范围是文件名、类名、函数名为变量,用and来区分 可以使用not
or等进行多个连接的匹配
pytest框架使用总结(基本命令1)
使用or可以进行多个连接
pytest框架使用总结(基本命令1)

j.调试脚本:
-s 指定打印的详细信息,打印print()中输出的调试信息等
-v 打印的信息有passed和failed标志,并且打印出来的信息包含路径 pytest test_se.py -s pytest test_se.py -s -v
pytest框架使用总结(基本命令1)

相关文章:

  • 2022-02-25
  • 2022-12-23
  • 2022-12-23
  • 2021-12-16
  • 2021-12-10
  • 2021-12-28
  • 2021-12-27
猜你喜欢
  • 2022-01-13
  • 2021-10-14
  • 2022-01-20
  • 2021-07-13
  • 2022-12-23
  • 2022-12-23
  • 2021-08-12
相关资源
相似解决方案