pytest.fixture

fixture的作用

fixture在测试函数前后运行,代码可以定制,满足多变的测试需求

功能包括:定义传入测试中的数据集、配置测试前系统的初始状态、为批量测试提供数据源等

fixture是pytest把在测试前后做预备和清理工作的代码,分离出核心逻辑的一种机制

使用场景

用例1需要登录,用例2不需要登录,用例3需要登录,这种场景无法通过setup、teardown实现;要想实现此场景,就用到fixture了

使用方法

调用fixture函数的两种方式:1 把函数当做参数传入 2 用usefixtures

@pytest.fixture()
def login():
    return "登录" 

class TestLogin:
	# 方式一:把fixture函数当做参数传入
    def test_case1(self, login):	
        print(login)
        print("需要登录")

    def test_case2(self):
        print("不需要登录")

	# 方式二:用usefixtures调用fixture函数
    @pytest.mark.usefixtures("login")
    def test_case3(self):
        print("需要登录")

若所有用例都需要调用fixture函数,编码比较麻烦,我们可以用pytest.fixture(autouse=True),则模块中所有的用例将自动调用fixture函数

@pytest.fixture(autouse=True)
def login()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值