当前位置: 首页 > news >正文

wordpress文章评论数量/合肥网站seo公司

wordpress文章评论数量,合肥网站seo公司,dw网页设计素材包,珠海手机网站建设推广公司文章目录1、conftest.py文件介绍2、conftest.py的注意事项3、conftest.py的使用4、不同位置conftest.py文件的优先级5、conftest.py中Fixture(夹具)的作用域6、总结:1、conftest.py文件介绍 conftest.py文件是Pytest框架里面一个很重要的东西…

文章目录

      • 1、conftest.py文件介绍
      • 2、conftest.py的注意事项
      • 3、conftest.py的使用
      • 4、不同位置conftest.py文件的优先级
      • 5、conftest.py中Fixture(夹具)的作用域
      • 6、总结:

1、conftest.py文件介绍

conftest.py文件是Pytest框架里面一个很重要的东西,它可以在这个文件里面编写Fixture函数,这个Fixture函数的作用,就相当于Unittest框架里面的setup()前置函数和teardown()后置函数,虽然Pytest框架也有setup()前置函数和teardown()后置函数,但是在实际工作中没必要写在测试用例文件中,直接写在conftests.py里面就好了,Pytest框架会自动去找conftest.py文件里面的东西,这样更灵活。

总结:在实际工作中,通常conftest.py@pytest.fixture()结合使用,实现全局的前后置应用。

2、conftest.py的注意事项

  1. conftest.py文件是单独存放的一个夹具(Fixture)配置文件,名称是不能更改。

  2. 可以在不同的.py文件中使用同一个Fixture函数。

  3. 原则上conftest.py需要和运行的用例放到同一目录中,并且有__init__.py文件,那么conftest.py作用于整个目录。

    如果希望Fixture(夹具)共享给所有测试,则可以把conftest.py文件放在测试框架的根目录下。

  4. conftest.py文件中的内容,不需要做任何的imprt导入的操作就能够读取到,因为Pytest用例会自动查找。

  5. 建议把测试项目的所有Fixture都存放在conftest.py文件中,把conftest.py当作Pytest的Fixture仓库。

3、conftest.py的使用

(1)测试框架的根目录或者包中创建conftest.py文件

"""
1.学习目标掌握conftest.py文件编写格式
2.操作步骤2.1 conftest.py文件名不能修改conftest.py文件中存放项目所有的fixture方便对fixture管理和维护2.2 在conftest.py定义函数在函数前添加@pytest.fixture()装饰器在测试用例的函数中传入fixture标识的函数名。提示:conftest.py文件放在项目的根目录,作用域是全局的。conftest.py文件放在某一个包下,作用域只在该包内。"""
import pytest
from selenium import webdriver@pytest.fixture()
def login():print("打开APP")print("登录成功")yield  # 当用例执行完成后,执行yield后的代码print("关闭APP")@pytest.fixture()
def driver(request):  # request是Pytest中的一个关键字,固定写法。# 步骤1:创建浏览器驱动对象driver = webdriver.Chrome()# 步骤3:定义用例执行后要执行的代码,封装到一个函数中def end():  # 这个end函数命是自定义的driver.quit()# 步骤4:执行上面封装的代码。# 通过request关键字,结束上面的函数。request.addfinalizer(end)  # 终结函数# 步骤2:返回浏览器驱动对象,给测试用例return driver

(2)测试用例文件如下

import pytest# 注意:要把conftest.py文件中定义的fixture方法添加到用例中
def test_add_cart(login): # 把conftest.py文件中的fixture函数传入用例print("添加购物车--需要登录")def test_add_address(login):print("添加收货地址--需要登录")if __name__ == '__main__':pytest.main()"""
执行结果:test_01.py::test_add_cart 打开APP
登录成功
添加购物车--需要登录
PASSED关闭APPtest_01.py::test_add_address 打开APP
登录成功
添加收货地址--需要登录
PASSED关闭APP
"""

4、不同位置conftest.py文件的优先级

其作用范围是当前目录包括子目录里的测试模块。

  • 比如在测试框架的根目录创建conftest.py文件,文件中的Fixture的作用范围是所有测试模块。

  • 比如在某个单独的测试文件夹里创建conftest.py文件,文件中Fixture的作用范围,就仅局限于该测试文件夹里的测试模块。

    该测试文件夹外的测试模块,或者该测试文件夹外的测试文件夹,是无法调用到这个conftest.py文件中的Fixture。

  • 如果测试框架的根目录和子包中都有conftest.py文件,并且这两个conftest.py文件中都有一个同名的Fixture,实际生效的是测试框架中子包目录下的conftest.py文件中配置的Fixture。

  • 提示:一个用例可以添加多个conftest.py文件中定义的Fixture夹具,如下:

    # 注意:要把conftest.py文件中定义的fixture方法添加到用例中
    def test_add_cart(login, driver):print("添加购物车--需要登录")
    

5、conftest.py中Fixture(夹具)的作用域

Fixture的scope参数也适用conftest.py文件中Fixture的特性:

  1. conftest.py文件中Fixture的scope参数为session,那么所有的测试文件执行前(后)执行一次conftest.py文件中的Fixture。
  2. conftest.py文件中Fixture的scope参数为module,那么每一个测试文件执行前(后)都会执行一次conftest.py文件中Fixture。
  3. conftest.py文件中Fixture的scope参数为class,那么每一个测试文件中的测试类执行前(后)都会执行一次conftest.py文件中Fixture。
  4. conftest.py文件中Fixture的scope参数为function,那么所有文件的测试用例执行前(后)都会执行一次conftest.py文件中Fixture。

6、总结:

  • Pytest框架中的setup()/teardown()函数,setup_class()/teardown_class()函数。他们是作用于所有用例或者所有类的。
  • @pytest.fixtrue()的作用域是既可以部分用例,也可以全部用例的前后置。
  • conftest.py文件和@pytest.fxtrue()装饰器结合使用,作用于全局用例的前后置。

参考:

  • https://www.cnblogs.com/hao2018/p/11351125.html
  • https://blog.csdn.net/lc_buzhidao/article/details/105179883
http://www.lbrq.cn/news/1471789.html

相关文章:

  • 建设银行网站地址/广州seo软件
  • 5118网站/微信指数是搜索量吗
  • 厦门八优网站建设/西安快速排名优化
  • 做问卷的网站生成二维码/电视剧排行榜百度搜索风云榜
  • 高校思政教育工作网站建设/信息流优化师简历
  • 杭州网站建设中心/百度本地推广
  • 企腾做的网站怎么样/百度云资源搜索入口
  • 上海企业网站建设方法/广东佛山疫情最新情况
  • wordpress能外链的主题/seo关键词排名实用软件
  • php按步骤做网站/宣城网站seo
  • 教科院网站建设/新河seo怎么做整站排名
  • discuz可以做公司网站/哪些网站可以发广告
  • 常州云之家网站建设网络公司怎么样/百度推广代理商名单
  • 建设购物网站多少钱/个人网页设计
  • wordpress后台html/燃灯seo
  • 如何查看网站空间商/优化设计的答案
  • 提供家居企业网站建设/专门做网站的公司
  • 国外做糖网站/百度一下的网址
  • 关注网站怎么做/外包网
  • 网站建设艾瑞市场分析/阿里指数网站
  • 如何域名解析网站建设/2345网址导航主页
  • uc投放广告网站要自己做吗/深圳关键词推广优化
  • 上海网站建设 微信开发公司/电脑优化大师
  • 做网站必须有主机吗/google搜索优化
  • 青岛网站制作公司/在线客服系统
  • 搜索引擎优化的英文缩写是什么/运城seo
  • 中山外贸营销网站建设/网店产品seo如何优化
  • 明星网站怎么设计/绍兴百度seo
  • 深圳网站设计有哪些/大数据是干什么的
  • 微店网站链接怎么做/女孩子做运营是不是压力很大
  • 理解HTTP协议
  • 逻辑回归----银行贷款模型优化
  • SpringBoot3.x入门到精通系列:1.1 简介与新特性
  • O2OA 平台:助力企业在信创浪潮下实现高效国产化转型
  • 通达OA服务器无公网IP网络,如何通过内网穿透实现外网远程办公访问OA系统
  • 【硬件-笔试面试题】硬件/电子工程师,笔试面试题-51,(知识点:stm32,GPIO基础知识)