gpt4 book ai didi

python - request.cls.driver 在具有类范围的 pytest fixture 中有什么作用?

转载 作者:行者123 更新时间:2023-12-04 13:41:06 30 4
gpt4 key购买 nike

请参阅下面的 fixture ​​并帮助我了解 request 和 request.cls.driver=driver 到底在做什么?据我了解它与 fixture 的范围有关,如果我使用不同的范围会发生什么?

@pytest.fixture(scope="class")
def driver_init(request):
from selenium import webdriver
web_driver = webdriver.Chrome("C:/chromedriver.exe")
request.cls.driver = web_driver
yield
web_driver.close()

最佳答案

基本上在这里,在你的方法中 driver_init 而不是将驱动程序声明为 全局您正在使用请求变量作为参数

 web_driver = webdriver.Chrome("C:/chromedriver.exe")  
request.cls.driver = web_driver
因此,在这里您将 web_driver 存储在类级别的请求变量中,可以在运行测试时访问该变量。
当参数 scope = "class"时,类中的多个测试用例将被执行,并且只会调用一次驱动程序函数。
当参数 scope = "function"驱动函数在类中不同的测试用例执行之前被调用时,简称为类中的每个测试用例。

关于python - request.cls.driver 在具有类范围的 pytest fixture 中有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56856233/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com