随笔 - 97  文章 - 0  评论 - 1  阅读 - 44423

pytest中,fixture的scope可以设置的级别

function:默认值,表示fixture将在测试函数被调用时执行,并且它们每个测试函数都会运行一次。

@pytest.fixture()

  def my_fixture():

  # setup code here

  yield

  # teardown code here

class:表示fixture将在类内所有测试方法之前和之后执行。一个类有多个测试方法,则该fixture仍只会执行一次。

@pytest.fixture(scope="class")
  def my_fixture():
  # setup code here
  yield
  # teardown code here

module:表示fixture将在模块(即.py文件)中所有测试函数之前执行一次,并在所有测试完成后执行。在同一个模块下多个测试函数使用同一个 fixture,则这个fixture也仅会被执行一次。

@pytest.fixture(scope="module")
  def my_fixture():
  # setup code here
  yield
  # teardown code here

session:表示fixture将在整个测试会话开始时执行,并在所有测试完成后执行。在同一个会话中多个模块使用同一个 fixture,则这个fixture也仅会被执行一次。

@pytest.fixture(scope="session")
  def my_fixture():
  # setup code here
  yield
  # teardown code here

posted on   peijiao  阅读(92)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示