pytest钩子hook使用2

pytest是一种用于编写单元测试的Python库。它允许程序员编写测试用例来验证代码的正确性,并提供了一系列的勾子(hooks)来在测试的不同阶段执行一些额外的操作。

使用pytest的勾子,可以在测试运行过程中插入自定义代码。下面是一些常见的pytest勾子的使用方法:

  1. pytest_configure:在pytest运行时首次调用。可以在这里注册自定义的fixture、导入测试数据等。

```python

def pytest_configure(config):

注册自定义的fixture

config.addinivalue_line("pytest_plugins", "my_fixture")

```

  1. pytest_collection_modifyitems:在测试收集阶段调用,可以用来修改测试集合。

```python

def pytest_collection_modifyitems(config, items):

for item in items:

修改测试用例的名称

item.name = item.name.replace("test_", "check_")

```

  1. pytest_runtest_setup:在执行每个测试用例的设置阶段调用。

```python

def pytest_runtest_setup(item):

在每个测试用例执行之前执行的操作

pass

```

  1. pytest_runtest_teardown:在执行每个测试用例的清理阶段调用。

```python

def pytest_runtest_teardown(item, nextitem):

在每个测试用例执行之后执行的操作

pass

```

  1. pytest_runtest_logstart:在每个测试用例运行前的日志开始时调用。

```python

def pytest_runtest_logstart(nodeid, location):

在每个测试用例运行前记录日志

pass

```

以上只是一些常见的pytest勾子的使用方法,还有其他更多的勾子可以用来满足不同的需求。通过使用这些勾子,可以更好地控制和定制pytest的行为。

相关推荐
边吃番茄边敲代码2 天前
从本地工具到 MCP:给 Agent 接入独立工具服务,并补齐自动化测试
人工智能·python·功能测试·ai·单元测试·pytest
SugarAbsinthe2 天前
【Agent开发实习小记】从人工逐条验证到自动化验收:新 API 接入前的效率瓶颈
人工智能·python·自动化·pytest
X1A0RAN3 天前
pytest 动态报告:数据可视化篇 —— 用 Golang + Echo 打造自动化测试任务可视化平台
信息可视化·golang·pytest
吨吨ai3 天前
Codex 实战:用 Git 分支 + pytest 构建可回滚的 AI 开发流程(2026年8月27日)
人工智能·git·pytest
冷凝娇6 天前
【Pytest】2026 学习总结
学习·pytest
测试老哥8 天前
Pytest自动化测试框架tep环境变量、fixtures、用例三者之间的关系
自动化测试·软件测试·python·测试工具·测试用例·pytest·职场发展
小小测试开发8 天前
Agent 安全测试:pytest 原生红队框架 RAMPART 实战解析
人工智能·pytest
不拘一格的叶三少12 天前
Pytest + Playwright 自动化测试工程设计要点 & 目录结构
测试工具·pytest