1、conftest.py文件是什么

  • 单独存放fixtrue配置的一个文件
  • 用处是可以多个不同的pytest测试脚本共用一套fixture配置,代码维护方便

2、conftest.py使用注意事项

  • conftest.py文件不能修改名称,否则pytest检测不到
  • conftest.py与运行的用例要在python同一个包下(ps:必须有 init.py)
  • conftest.py文件配置好后,pytest自动检测并生效,不需要进行import导入

3、conftest.py文件使用实例

3.1. 单个包层级

  • 代码结构层次

  • 代码





  • 上述实例要运行,只需要运行 test_demo_02.py 文件即可,会自动检测 conftest.py 文件中的fixtrue

  • 通过上述实例,可以发现 test_demo_01.py 和 test_demo_02.py 都能引用到 conftest.py 文件中的fixtrue

3.2. 多个包层级,存在顶级包和测试包

  • 代码结构层次

  • 顶级目录pytest_demo包下的conftest.py代码

  • conftest_demo_02包下的conftest.py代码

  • conftest_demo_02包下的test_demo_01.py代码

  • conftest_demo_02包下的test_demo_02.py代码

  • 运行结果

    运行conftest_demo_02包下的test_demo_02.py代码,结果如下

3、conftest.py总结

  • 上述包下实例要运行,只需要运行 test_demo_02.py 文件即可,会自动检测到所有 conftest.py 文件中的fixtrue

  • 上例中包含了3个 conftest.py 文件,有顶层的,有测试包下的

  • 上例执行后查看结果会发现本层的 conftest.py 文件先生效,然后再生效上一级包下的

  • 在testadd方法中引用了本层和顶层的的fixtrue,可以看出顶层的fixtrue对本层级包以及子包下的测试方法都能生效

  • 注意:conftest_demo_02包下的测试模块不能引用conftest_demo_01包下 conftest.py 的fixture,因为它们没有上下的层级关系

  • 在实际使用 conftest.py 文件中,一般会把顶层的fixtrue的scope设置为session,存放整个项目需要使用的初始化操作或数据

pytest--conftest.py用法(单独存放fixtrue配置的一个文件)的更多相关文章

  1. shiro配置参考(二)可以和mybatis的配置放在一个文件中(不建议这样,可以拆分开来,注意相关配置即可)

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  2. pytest框架+conftest.py配置公共数据的准备和清理

    1.pytest介绍:1.自动发现测试模块和测试方法 2.断言使用 assert+表达式即可 3.可以设置会话级.模块级.类级.函数级的fixture 数据准备+清理工作 4.丰富的插件库,==all ...

  3. 『德不孤』Pytest框架 — 14、Pytest中的conftest.py文件

    目录 1.conftest.py文件介绍 2.conftest.py的注意事项 3.conftest.py的使用 4.不同位置conftest.py文件的优先级 5.conftest.py中Fixtu ...

  4. Pytest系列(6) - conftest.py的详细讲解

    如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 什么是conftest.py 可以 ...

  5. pytest自动化3:fixture之conftest.py实现setup

    出处:https://www.cnblogs.com/yoyoketang/p/9390073.html 前言: 前面一篇讲到用例加setup和teardown可以实现在测试用例之前或之后加入一些操作 ...

  6. pytest 3.fixture介绍一 conftest.py

    前言: 前面一篇pytest2 讲到用例加setup和teardown可以实现在测试用例之前或之后加入一些操作,但这种是整个脚本全局生效的,如果我想实现以下场景: 用例1需要先登录,用例2不需要登录, ...

  7. pytest文档5-fixture之conftest.py

    前言 前面一篇讲到用例加setup和teardown可以实现在测试用例之前或之后加入一些操作,但这种是整个脚本全局生效的,如果我想实现以下场景: 用例1需要先登录,用例2不需要登录,用例3需要先登录. ...

  8. Pytest学习(六) - conftest.py结合接口自动化的举例使用

    一.conftest.py作用 可以理解成存放fixture的配置文件 二.conftest.py配置fixture注意事项 pytest会默认读取conftest.py里面的所有fixture co ...

  9. pytest文档4-fixture之conftest.py

    用例1需要先登录,用例2不需要登录,用例3需要先登录.很显然这就无法用setup和teardown来实现了.fixture之conftest.py就是自定义测试用例的预置条件 1.firture相对于 ...

随机推荐

  1. 【Java】简单了解网络编程

    文章目录 网络编程 网络编程中有两个主要的问题 网络编程中的两个要素 通信要素一:IP和端口号 实例化InetAddress 两个常用方法 端口号 通信要素二:网络通信协议 实现TCP的网络编程 例子 ...

  2. 【Java】toString

    toString 当我们输出一个对象的引用时,实际上就是调用当前对象的toString() Object类中toString()的定义: public String toString() { retu ...

  3. day 18 C语言顺序结构基础定义1

    (1).有以下程序: 程序运行后的输出结果是[B] (A).3,5,5,3 (B).3,5,3,5 (C).5,3,3,5 (D).5,3,5,3 这个题其实也可以弄成改错题,传到函数里面要对其值操作 ...

  4. 链式printf()函数的用法

    printf()函数:十进制格式型输出函数. #include <stdio.h> int printf( const char *format, ... ); 1.首先printf的返回 ...

  5. 微服务架构 | 3.3 Apache Zookeeper 注册中心

    @ 目录 前言 1. Zookeeper 基础知识 1.1 Zookeeper 是什么 1.2 Zookeeper 的数据结构 1.3 Watcher 机制 1.4 常见应用场景分析 1.5 Zook ...

  6. MySQL之MVCC与幻读

    转自 https://blog.csdn.net/qq_31930499/article/details/110393988 如果是快照度,直接采用MVCC,如果是当前读,才会走next-key lo ...

  7. StringBuilder类介绍

    1 package cn.itcast.p2.stringbuffer.demo; 2 3 public class StringBuilderDemo { 4 public static void ...

  8. Nginx同server配置下配置多个localhost路由地址

    nginx多页面路由配置,进入 nginx/conf/nginx.conf: http { ...... server { listen 80; server_name localhost; loca ...

  9. 最大公因数与最小公倍数-gcd&lcm

    一.一些性质 \(gcd(a,b)=gcd(b,a)\) \(gcd(-a,b)=gcd(a,b)\) \(gcd(a,a)=|a|, gcd(a,0)=|a|\) \(gcd(a,1)=1\) \( ...

  10. Atcoder ARC-061

    ARC061(2020.7.10) A 暴力 \(dfs\) 即可. B 考虑统计以每个点为矩阵中心的答案,显然一个黑点只会影响周围九个黑点,使用 \(map\) 来记录这个值,每次修改修改一下答案数 ...