Hey Varhsa, Parameterized Fixtures are used to execute fixture function multiple times along with the execution of dependent tests. Parameterized Fixtures are widely used to write exhaustive test functions. Parameterization of a fixture allows you to add params to a function like driver_init() which can launch Chrome as well as Firefox browsers if defined this way:
@pytest.fixture(params=["chrome", "firefox"],scope="class")
def driver_init(request):
from selenium import webdriver
if request.param == "chrome":
web_driver = webdriver.Chrome()
if request.param == "firefox":
web_driver = webdriver.Firefox()
request.cls.driver = web_driver
yield
web_driver.close()