python中conftest如何使用?

1、conftest的概念

conftest是pytest进阶中的高级应用,最近正好用到这一块儿,研究之后,向大家分享该高级应用。

2、使用步骤

(1)conftest代码块

以全局性使用driver为主,只启动一次浏览器:

@pytest.fixture(scope='session')#以此实现多个用例,只启动一次浏览器
defbrowser():
globaldriver
'''定义全局driver参数'''
browser_name=ReadFile.read_config("$.browser.name")
ifdriverisNone:
ifbrowser_name=='chrome':
driver=webdriver.Chrome(executable_path="../driver/chromedriver.exe")
driver.maximize_window()
elifbrowser_name=='firefox':
driver=webdriver.Firefox()
elifbrowser_name=='ie':
driver=webdriver.Ie()
else:
Logger.error('传入的浏览器名称有误')
driver.implicitly_wait(10)
Logger.debug(f"正在启动浏览器:{browser_name}")
yielddriver
Logger.debug("正在关闭浏览器")
time.sleep(5)
driver.close()
returndriver

(2)使用方法

在test_api中进行使用:

deftest_api(self,case,browser):
#执行测试
page=MainPage(driver=browser)
page.start(case=case)

注意:test_api方法中的传参browser要跟conftest中的方法保持一致,无需做其他配置,前提conftest所在的目录要有__init__文件。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。