pytest入门十:配置文件

  • pytest.ini:pytest的主配置文件,可以改变pytest的默认行为
  • conftest.py:测试用例的一些fixture配置

pytest.ini

复制代码
marks
mark 打标的执行 @pytest.mark.add  add需要些marks配置否则报warning
[pytest]
markers=
  add:测试打标

测试用例中添加了 @pytest.mark.webtest 装饰器,如果不添加marks选项的话,就会报warnings

pytest

markers =

smoke

end

fist
xfail_strict

设置xfail_strict = True可以让那些标记为@pytest.mark.xfail但实际通过显示XPASS的测试用例被报告为失败

addopts

addopts参数可以更改默认命令行选项,这个当我们在cmd输入一堆指令去执行用例的时候,就可以用该参数代替了,省去重复性的敲命令工作

命令行参数

addopts = -v --reruns=1 --count=2 --html=reports.html --self-contained-html -n=auto

加了addopts之后,我们在cmd中只需要敲pytest就可以生效了!!

log_cli

控制台实时输出日志

格式:log_cli=True 或False(默认),或者log_cli=1 或 0
norecursedirs

pytest 收集测试用例时,会递归遍历所有子目录,包括某些你明知道没必要遍历的目录,遇到这种情况,可以使用 norecursedirs 参数简化 pytest 的搜索工作
pytest默认的测试用例收集规则

;指定测试目录

;定义执行的目录

testpaths=tests

;自定义测试文件命名规则

python_files = test_* check_*

;自定义测试类

python_classes = Test* Check*

;自定义测试方法

python_functions = test_* check_*

;指定特定路径:当在上级路径时,也会默认执行sub_demo

;testpaths = sub_demo

;忽略路径

norecursedirs = result logs datas

指定pytest最低版本号

minversion=5.0

conftest.py

conftest.py

import pytest

@pytest.fixture()

def conftest_fixture():

print("fixture前置")

yield

print("fixture后置")
test_demo.py

def test_case(conftest_fixture):

print("测试用例")
运行结果

============================= test session starts =============================

collecting ... collected 1 item

test_demo.py::test_case fixture前置

PASSED [100%]测试用例

fixture后置

============================== 1 passed in 0.02s ==============================

相关推荐
兴趣使然黄小黄1 天前
【Pytest】Pytest框架快速入门
python·pytest
m0_632482502 天前
Jenkins + Pytest +allure接口自动化测试配置与操作
jenkins·集成测试·pytest·jenkins配置
李星星BruceL2 天前
Pytest第三章(参考指南1)
python·自动化·pytest
哎呀呦呵2 天前
pytest基本使用
python·pytest
Kristen_YXQDN2 天前
PyCharm 中 pytest 运行 python 测试文件报错:D:\Python_file\.venv\Scripts\python.exe: No module named pytest
运维·开发语言·python·pycharm·pytest
Low--Key2 天前
pytest框架快速入门
python·自动化·pytest
姜西西_2 天前
自动化测试框架pytest之fixture
android·java·pytest
测试开发Kevin2 天前
超级实用!汇总pytest中那些常用的参数
单元测试·pytest
Beaman10242 天前
pytest框架
python·pytest
昔时扬尘处3 天前
【Files Content Replace】文件夹文件内容批量替换自动化测试脚本
c语言·python·pytest·adi