zoukankan      html  css  js  c++  java
  • pytest-fixture之conftest.py

    conftest.py 配置可以实现数据共享,不需要import就可以自动找到一些配置.

    conftest.py需要与运行的用例在同一个包下面,并且要有init.py文件

    1.fixture(scope="funtion",params=None,autouse=False,ids=None,name=None)详解

    1.1.scope

      使用范围: session>module>class>function

      相当于为用例设置前置条件,分为全局,模块级,类级,函数级.

        ="module"  实现多个.py跨文件共享前置

          如果一个.py里面有多个用例,都调用了此fixture,那么该fixture只在该.py里所有用例开始前执行一次.

        ="session"  以实现多个.py文件跨文件使用一个session完成多个用例

        ="function"  针对函数有效

          使用场景:用例1需要登陆,用例2不需要登陆

          # 不带参数,默认为function

          @pytest.fixture()

          def login():

            print("输入账号密码登陆")

            login_role()  #登陆

          在测试用例中使用:

            def test_case1(login):

              print("需要登陆的用例")

            def test_case2():

              print("不需要登陆的用例")

        ="class"

          如果一个class里面有多个用例,都调用了此fixture,那么该fixture只在该class里所有用例开始前执行一次.

    1.2 autouse

      默认为False,当为True时,不需要每个用例都去传参!

    2.yield

      相当于teardown操作

            使用方式一:

        # 关闭浏览器
        @pytest.fixture(scope="session", autouse=True)
        def browser_close():
         yield driver
         driver.quit()
         print("test end!")

       使用方式二:

    1 @pytest.fixture(scope="function")
    2 def set_business_domain_url(req):
    3     print('在调用此函数的测试用例执行前 do something,相当于setup fuction')
    4 yield 5 print('在调用此函数的测试用例执行完后 so something,相当于teardown function')

    3.html测试报告详解

    3.1 钩子函数

      定义: 就是把我们实现的hook函数在某一时刻挂接到目标挂载点上.相当于 监听.可以这么理解.

      钩子函数 不允许 抛出异常!

    3.2 填写测试环境

    def pytest_configure(config):
    config._metadata["项目名称"] = '111'
    config._metadata['接口地址'] = api['api_url']
    config._metadata['测试账号'] = testdata['user']
  • 相关阅读:
    PHP把数组按指定的个数分隔
    主题模型(LDA)(一)--通俗理解与简单应用
    用户活跃度下降40%!七问新浪微博
    天才罗素:知识面横跨哲学 数学和文学 最懂的却是女人
    金刚经---现代解读
    离散数学
    交易已无秘密 一个期货高手的终极感悟
    一位资深交易员的投资感悟(建议收藏)
    F1 score,micro F1score,macro F1score 的定义
    以前曾看到过一个期货童话故事,很有意思,发上来
  • 原文地址:https://www.cnblogs.com/Tester_Dolores/p/11955416.html
Copyright © 2011-2022 走看看