Pytest的Fixture装饰器如何实现数据共享?

2026-05-23 02:560阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2107个文字,预计阅读时间需要9分钟。

目录 + 5. addfinalizer关键字 + 6. 带返回值的Fixture + 7. Fixture参数化 + (1)params参数的使用 + (2)进阶使用 + 8. @pytest.mark.usefixtures()的使用 + 5. addfinalizer关键字 + yield 是当用例执行完之后,会执行。

目录
  • 5、addfinalizer关键字
  • 6、带返回值的Fixture
  • 7、Fixture实现参数化
    • (1)params参数的使用
    • (2)进阶使用
  • 8、@pytest.mark.usefixtures()的使用

5、addfinalizer关键字

yield是当用例执行完之后,会执行yield后面的代码,但用例不能有return返回值。

addfinalizer实现功能跟yield一样,但是用例可以return参数,传给后面用例。

示例1:

import pytest @pytest.fixture() def login(request): # request是Pytest中的一个关键字,固定写法。 # 步骤1:正常编写前置用例 print("打开APP") print("输入账号,密码,进行登录") username = '小明' # 步骤3:定义用例执行后要执行的代码,封装到一个函数中 def closeApp(): # 这个closeApp函数命是自定义的 print("关闭APP") # 步骤4:执行上面封装的代码。 # 通过request关键字,结束上面的函数。

阅读全文

本文共计2107个文字,预计阅读时间需要9分钟。

目录 + 5. addfinalizer关键字 + 6. 带返回值的Fixture + 7. Fixture参数化 + (1)params参数的使用 + (2)进阶使用 + 8. @pytest.mark.usefixtures()的使用 + 5. addfinalizer关键字 + yield 是当用例执行完之后,会执行。

目录
  • 5、addfinalizer关键字
  • 6、带返回值的Fixture
  • 7、Fixture实现参数化
    • (1)params参数的使用
    • (2)进阶使用
  • 8、@pytest.mark.usefixtures()的使用

5、addfinalizer关键字

yield是当用例执行完之后,会执行yield后面的代码,但用例不能有return返回值。

addfinalizer实现功能跟yield一样,但是用例可以return参数,传给后面用例。

示例1:

import pytest @pytest.fixture() def login(request): # request是Pytest中的一个关键字,固定写法。 # 步骤1:正常编写前置用例 print("打开APP") print("输入账号,密码,进行登录") username = '小明' # 步骤3:定义用例执行后要执行的代码,封装到一个函数中 def closeApp(): # 这个closeApp函数命是自定义的 print("关闭APP") # 步骤4:执行上面封装的代码。 # 通过request关键字,结束上面的函数。

阅读全文