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 天前
Python+Playwright+Pytest+BDD,用FSM打造高效测试框架
python·pytest·bdd·playwright·fsm
小白上线*^_^*2 天前
Pytest 自动化测试框架速通指南(二)
软件测试·pytest·python测试框架·ai测试基础
Logintern093 天前
pytest的AST 断言重写
pytest
Tinyfacture4 天前
接口自动化之添加商品(pytest)
python·测试工具·自动化·pytest
ji_shuke6 天前
从零深入:基于 Playwright + Pytest + Allure 的企业级 Web 端到端自动化测试框架实战
前端·自动化测试·docker·jenkins·pytest·allure·playwright
祉猷并茂,雯华若锦7 天前
Selenium+Pytest自动化测试框架实战
selenium·测试工具·pytest
祉猷并茂,雯华若锦8 天前
Pytest+Selenium自动化测试:失败自动截图集成Allure报告
selenium·测试工具·pytest
我的xiaodoujiao12 天前
API 接口自动化测试详细图文教程学习系列32--Allure测试报告2
python·学习·测试工具·pytest
一孤程15 天前
Pytest+Selenium搭建自动化框架-保姆级实战教程
selenium·自动化·pytest
名字还没想好☜19 天前
用 pytest fixture 组织可维护的测试:告别一堆重复的 setUp
数据库·python·oracle·pytest·测试