首页 > 其他分享 >Pytest - Fixture(2) - 实现setup和teardown(yield)

Pytest - Fixture(2) - 实现setup和teardown(yield)

时间:2023-05-26 09:25:49浏览次数:33  
标签:__ teardown setup py Fixture yield print test

Fixture 实现setup和teardown(yield)


  • 用 fixture 实现 teardown 并不是一个独立的函数,而是用 yield 函数来开启 teardown 操作;

    • 具体yield是什么,可以去度娘一下~

    test_py.py

    import pytest
    
    # 配置自动运行的fixture
    @pytest.fixture(scope="function", autouse=True)
    def open():
        # 会话前置操作 setup
        print("\n====打开浏览器====")
    
        yield
    
        # yield后面,会话后置操作 teardown
        print("****关闭浏览器****")
    
    
    def test_s1():
        print("\n用例test_s1:创建")
        
    def test_s2():
        print("\n用例test_s2:删除")
    
    
    if __name__ == '__main__':
        pytest.main(['-q', 'test_py.py'])
        
    

标签:__,teardown,setup,py,Fixture,yield,print,test
From: https://www.cnblogs.com/mzline/p/17432567.html

相关文章

  • python中yield关键字
    yield就是保存当前程序执行状态。yield可以简单理解为return操作,但和return又有很大的区别。执行完return,当前函数就终止了,函数内部的所有数据、内存空间,全部都没有了。而yield在返回数据的同时,还保存了当前的执行内容,当你再一次调用这个函数时,他会找到你在此函数中的yield关键字......
  • Pytest - Fixture(1) - 入门&概述
    Pytest-Fixture入门&概述之前讲过测试用例的前置和后置的方法,可以使用setup和teardown函数实现,但是这种方法是用于全部测试用例的;当我有部分测试用例不需要setup的方法该怎么办?pytest提供了fixture方法,让我们可以自定义测试用例的前置及后置条件;还可以根据配置......
  • Pytest - setup 和 teardown
    Pytest-setup和teardown执行用例肯定有些需要前置条件或后置操作,例如前置的用户登陆,后置的清理数据等操作;unittest提供了两种前置(setup、setupClass)和两种后置(teardown、teardownClass);相比之下,pytest提供了十种setup和teardown方法:模块级别:setup_module、te......
  • Setup安装在VS设置
    Nuget安装InstallerProjects后 在需要做安装的项目文件里新建安装包项目,然后在ApplicationFolder右击Add文件,如下图winform的debug文件全部选定: ApplicationFolder再点Add“项目输出”: 右击新生成的主输出文件->Create Shortcut to主输出fromtest(Active)依赖......
  • vue中<script setup>中使用watch、computed、props、defineExpose、defineEmits等方法
    <scriptsetup>是在单文件组件(SFC)中使用组合式API的编译时语法糖。相比于普通的<script>语法,它具有更多优势:更少的样板内容,更简洁的代码。能够使用纯TypeScript声明props和抛出事件。更好的运行时性能(其模板会被编译成与其同一作用域的渲染函数,没有任何的中间......
  • python yield yield from
    pythonyield1:可迭代、迭代器、生成器2:如何运行/激活生成器3:生成器的执行状态4:从生成器过渡到协程:yield可迭代、迭代器、生成器fromcollections.abcimportIterable,Iterator,Generatorisinstance(obj,Iterable)#可迭代对象isinstance(obj,Iterator)......
  • pytest中,fixture的scope可以设置的级别
    function:默认值,表示fixture将在测试函数被调用时执行,并且它们每个测试函数都会运行一次。@pytest.fixture()defmy_fixture():#setupcodehereyield#teardowncodehereclass:表示fixture将在类内所有测试方法之前和之后执行。一个类有多个测试方法,则......
  • C#中的yield使用方法
    讲解在C#基础库中经常可以看到很多方法返回值是IEnumerable类型,那么为什么返回IEnumerable而不是返回IList、ICollection或List类型呢?看完这篇文章你就能得到答案了。IEnumerable它表示该集合中的元素可以被遍历,一般来说IEnumerable类型的对象会和yield紧密结合和......
  • C#中的yield return详细解释
    C#中的yieldreturn是一个强大的关键字,它可以帮助我们在不创建临时集合的情况下,实现可枚举的值的生成。yieldreturn可以实现延迟执行(LazyEvaluation),更具可读性和优化内存的使用。yieldreturn的工作原理在C#中,当我们使用yieldreturn时,编译器会为我们生成一个名为......
  • Inno Setup
    modpath.iss//----------------------------------------------------------------------------////InnoSetupVer: 5.4.2//ScriptVersion: 1.4.2//Author: JaredBreland<[email protected]>//Homepage: http://www.legroom.net/software//Licen......