Pytest --------- fixture 使用(四)

一:fixture 概述:

在执行用例之前比如说进行登录操作、连接数据库等一些前置操作都可以放在fixture函数中

二:如何使用:

把一个函数定义为Fixture很简单,只能在函数声明之前加上“@pytest.fixture”。其他函数要来调用这个Fixture,只用把它当做一个输入的参数即可,当多个fixture方法,可以互相调用,

三种使用方式:

方式一:将fixture函数,作为函数的参数 (fixture也称为固件)

方式二:使用@pytest.mark.usefixtures("fixture函数名")标签

方法三、autouse设置为True,自动调用fixture功能

第一种:将fixture函数名作为参数来使用,如下图,

fixture函数名为 openBrowser,如果test01函数需要使用,那在此函数的参数中添加fixture的函数名即可,在执行test01函数时候,会先执行fixture函数内容

Pytest --------- fixture 使用(四)

 

第二种:使用@pytest.mark.usefixtures("fixture函数名")标签

如下图 test02函数需要使用fixture函数的操作,可以在其函数上面加一个标签

Pytest --------- fixture 使用(四)

 

方法三:借用autouse =True 参数来使用(autouse设置为True,自动调用fixture功能

上面用例需要用到就直接传该函数的参数名就可以,问题来了,如果用例很多时候,每个用例都传都比较麻烦,可以借助fixture中参数auouse,默认是False没开启,可以设置为True开启自动使用fixture功能,这样用例不用每个都传参了

 

Pytest --------- fixture 使用(四)