
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基础教程






