1使用fixture执行配 置及销毁;非常灵活 使用。
2数据共享:在 conftest.py配置里写方 法可以实现数据共享, 不需要import导入。可 以跨文件共享
3scope的层次及神 奇的yield组合相当 于各种setup 和teardown
 
使用fixture执行配置及销毁逻辑

场景:测试用例执行时,有的用例的数据保存在数据库中,需要先连 接数据库再执行测试用例,最后停止数据库的连接。setup和teardown 可以实现。fixture可以灵活命名实现。默认scope(范围)function

• 步骤:
1. 导入pytest

2. 在登陆的函数上面加@pytest.fixture()


3. 在要使用的测试方法中传入(登陆函数名称),就先登陆
4. 不传入的就不登陆直接执行测试方法。

@pytest.fixture()
def login():
print("\n输入用户名密码登陆") def test_cart(login):
print('用例1,登陆后执行添加购物车功能操作') def test_search():
print('用例2,不登陆查询功能操作') def test_pay(login):
print('用例3,登陆后执行支付功能操作

pytest_fixture.py::test_cart
输入用户名密码登陆
PASSED [ 33%]用例1,登陆后执行添加购物车功能操作

pytest_fixture.py::test_search PASSED [ 66%]用例2,不登陆查询功能操作

pytest_fixture.py::test_pay
输入用户名密码登陆
PASSED [100%]用例3,登陆后执行支付功能操作

pytest----fixture(1)--使用fixture执行配置及销毁逻辑的更多相关文章

  1. Pytest单元测试框架之FixTure基本使用

    前言: 在单元测试框架中,主要分为:测试固件,测试用例,测试套件,测试执行及测试报告: 测试固件不难理解,也就是我们在执行测试用例前需要做的动作和测试执行后的需要做的事情: 比如在UI自动化测试中,我 ...

  2. Pytest高级进阶之Fixture

    From: https://www.cnblogs.com/feiyi211/p/6626314.html 一. fixture介绍 fixture是pytest的一个闪光点,pytest要精通怎么能 ...

  3. Pytest(3)fixture的使用

    fixture的优势 Pytest的fixture相对于传统的xUnit的setup/teardown函数做了显著的改进: 命名方式灵活,不局限于 setup 和teardown 这几个命名 conf ...

  4. pytest进阶之xunit fixture

    前言 今天我们再说一下pytest框架和unittest框架相同的fixture的使用, 了解unittest的同学应该知道我们在初始化环境和销毁工作时,unittest使用的是setUp,tearD ...

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

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

  6. pytest初始化与清除fixture(二)

    @pytest.fixture用法 1.导入pytest模块:import pytest 2.调用装饰器函数:@pytest.fixture(callable_or_scope=None,*args, ...

  7. 开源 免费 java CMS - FreeCMS1.9 移动APP管理 执行配置

    项目地址:http://www.freeteam.cn/ 移动APP管理 从FreeCMS 1.8開始支持 执行配置 管理会员能够在这里设置移动app的欢迎图片. 从左側管理菜单点击执行配置进入. 选 ...

  8. CentOS 下 安装 nginx 执行配置命令 ./configure 报错

    CentOS 下 安装 nginx 执行配置命令 ./configure --prefix=/opt/nginx --sbin-path=/usr/bin/nginx 时提示以下错误: checkin ...

  9. Pytest测试框架(一):pytest安装及用例执行

    PyTest是基于Python的开源测试框架,语法简单易用,有大量的插件,功能非常多.自动检测测试用例,支持参数化,跳过特定用例,失败重试等功能. 安装 pip install -U pytest  ...

随机推荐

  1. 使用yarn搭建vue项目

    今天尝试了一下用yarn的方式搭建vue项目,方法其实是和npm的用法一样.但是在创建过程中报错了.现在整理一下,便于后期查错时使用. 以windows系统为例 1.全局安装yarn,三种方式 官网上 ...

  2. git的一些简单用法

    1.工作区暂存区和仓库区 工作区 对于添加.修改.删除文件的操作,都发生在工作区中 暂存区 暂存区指将工作区中的操作完成小阶段的存储,是版本库的一部分 仓库区 仓库区表示个人开发的一个小阶段的完成 仓 ...

  3. 【Luogu】【关卡2-5】字符串处理(2017年10月)

    任务说明:这里的字符串处理还会变得更加的有意思,难度也更大.需要好好地思考一下.

  4. 发布后台接口报错:could not load file or assembly 'mysql.data,' version=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d

    本地调试正常,但是服务器上面一直报错:could not load file or assembly 'mysql.data,' version=6.7.4.0, Culture=neutral, P ...

  5. java如何生成一个0-100的随机整数?

    public class Test {public static void main(String[] args) {int num=(int)(Math.random()*101);System.o ...

  6. 基于React Native的跨三端应用架构实践

    作者|陈子涵 编辑|覃云 “一次编写, 到处运行”(Write once, run anywhere ) 是很多前端团队孜孜以求的目标.实现这个目标,不但能以最快的速度,将应用推广到各个渠道,而且还能 ...

  7. TCP的状态及变迁

    十一种状态如下图: 全部11种状态1. 客户端独有的:(1)SYN_SENT (2)FIN_WAIT1 (3)FIN_WAIT2 (4)CLOSING (5)TIME_WAIT .2. 服务器独有的: ...

  8. 设置overflow:auto无效的解决办法

    做项目中经常要用到滚动条,有时候给div设置overflow无效. 遇到这样的问题,只需要在 F12 Elements面板检查一下要设置overflow的元素的宽高是否大于父级元素宽高. (overf ...

  9. Java中的Set集合以及HashSet

    Set集合: Set继承自Collection,所以没有什么特别的方法. 需要注意的是,Set集合不包含重复元素,我们重点了解Set集合如何保证不包含多余元素. HashSet: HashSet如何保 ...

  10. Java 基础 - System.arraycopy() 浅拷贝 深拷贝

    ref: https://blog.csdn.net/balsamspear/article/details/85069207 https://blog.csdn.net/balsamspear/ar ...