【自动化测试】pytest框架之fixture

fixture里面有个scope参数可以控制fixture的作用范围:session>module>class>function
-function:每一个函数或方法都会调用
-class:每一个类调用一次,一个类中可以有多个方法
-module:每一个.py文件调用一次,该文件内又有多个function和class
-session:是多个文件调用一次,可以跨.py文件调用,每个.py文件就是module

调用fixture:
1:直接传fixture的函数参数名称
在这里插入图片描述

2.使用装饰器@pytest.mark.usefixtures()修饰需要运行的用例
在这里插入图片描述

3.叠加使用usefixtures
在这里插入图片描述
在这里插入图片描述

usefixture和传fixture区别:如果fixture有返回值,那么usefixture就无法获取到返回值
在这里插入图片描述
在这里插入图片描述

fixture有个autouse默认是false,没有开启,默认是function ,每个函数都会执行,只需要设置为autouse=True,就不用再去调用fixture
在这里插入图片描述

conftest.py在不同层级目录,优先级不同
/conftest.py

import pytest

@pytest.fixture(scope='session', autouse=True)

def login():

    print('-----准备登陆-----')

/test/conftest.py

import pytest

@pytest.fixture(scope='session', autouse=True)

def bai_du():

    print('-----登录百度页面-----')

/test/test0526.py

import pytest

class TestCase:

    def test_login(self):

        print('成功登录百度')

if __name__ == '__main__':

    pytest.main(['-s', 'fixture0526.py'])

结果:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值