1、conftest的概念
conftest是pytest进阶中的高级应用,最近正好用到这一块儿,研究之后,向大家分享该高级应用。
2、使用步骤
(1)conftest代码块
以全局性使用driver为主,只启动一次浏览器:
@pytest.fixture(scope='session') # 以此实现多个用例,只启动一次浏览器 def browser(): global driver '''定义全局driver参数''' browser_name = ReadFile.read_config("$.browser.name") if driver is None: if browser_name == 'chrome': driver = webdriver.Chrome(executable_path="../driver/chromedriver.exe") driver.maximize_window() elif browser_name == 'firefox': driver = webdriver.Firefox() elif browser_name == 'ie': driver = webdriver.Ie() else: Logger.error('传入的浏览器名称有误') driver.implicitly_wait(10) Logger.debug(f"正在启动浏览器:{browser_name}") yield driver Logger.debug("正在关闭浏览器") time.sleep(5) driver.close() return driver
(2)使用方法
在test_api中进行使用:
def test_api(self, case, browser): # 执行测试 page = MainPage(driver=browser) page.start(case=case)
注意:test_api方法中的传参browser要跟conftest中的方法保持一致,无需做其他配置,前提conftest所在的目录要有__init__文件。
以上就是python中conftest使用的方法,希望能对大家有所帮助。更多Python学习指路:python基础教程