• 技术文章 >Python技术 >Python基础教程

    python中conftest如何使用?

    小妮浅浅小妮浅浅2021-02-25 15:47:14原创4722

    1、conftest的概念

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

    2、使用步骤

    (1)conftest代码块

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

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    @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中进行使用:

    1

    2

    3

    4

    def test_api(self, case, browser):

        # 执行测试

        page = MainPage(driver=browser)

        page.start(case=case)

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

    以上就是python中conftest使用的方法,希望能对大家有所帮助。更多Python学习指路:python基础教程

    专题推荐:python conftest
    上一篇:python中if嵌套命令如何理解? 下一篇:python常见循环结构有哪些

    相关文章推荐

    • python re.match和re.search的不同使用• python序列化与反序列化如何使用?• 谷歌升级为Python软件基金会的顶级赞助商• 适用Python3的restful多应用自动路由框架restfx0.7.9版本发布

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网