yield可以返回多个值到setup函数中去,但是需要用括号括起来,然后下面具体的函数接受到传值就不需要每次都实例化了。

举例如下:

@pytest.fixture()
def setup(driver):
    nav_bar = NavBar(driver)
    vir_kb = Virtual_Keyboard(driver)
    if not nav_bar.is_left_nav_bar_open():
        nav_bar.click_menu_bar()
    session_list = SessionListPage(driver)
    session_list.launch_session(1)
    api = BzwApi(driver)
    api.init_obj()
    sleep(2)
    yield (api, nav_bar, vir_kb)  #需要用括号括起来
    api.close_session()

@pytest.mark.usefixtures("create_mf_session")
class Test3270OtherFunctionKeysInVirtualKeyboard():
    """Test TE-BlueZone Web 08_3270 other Function Keys in Virtual Keyboard"""

def test_3270_function_key_backspace(self, setup): #接受到传值就不需要每次都实例化了,这里是setup,
        api, nav_bar, vir_kb = setup #这里就是实例化
        api.send_text('logon')
        cursor_col1 = api.get_cursor()[0]
        cursor_row1 = api.get_cursor()[1]
        nav_bar.click_virtual_keyboard()
        vir_kb.click_bksp()
        sleep(1)
        cursor_col2 = api.get_cursor()[0]
        cursor_row2 = api.get_cursor()[1]
        assert (cursor_col1 == cursor_col2 + 1) and (cursor_row1 == cursor_row2)

PS:需要注意的是,yield返回几个值,实例化就要用几个值,否则就会报错。这里一般是指返回的多,实例化的少,也是不行的。

python yield返回多个值的更多相关文章

  1. python return 返回多个值

    python return 返回多个值,实际返回的是一个tuple: #!/usr/bin/env python # -*- coding: utf-8 -*- def rt(): return 1, ...

  2. python 函数返回多个值

    参考文献:http://blog.csdn.net/facevoid/article/details/5369146

  3. Python连载39-生成器、next函数、yield返回值

    ​一.生成器 1.定义(generator):一边循环一边计算下一个元素的机制/算法 2.满三个条件 (1)每次调用都能产生出for循环需要的下一个元素 (2)如果达到最后一个后,能够爆出StopIt ...

  4. MySQL 存储过程返回多个值

    MySQL  存储过程返回多个值   在本教程中,您将学习如何编写/开发返回多个值的存储过程. MySQL存储函数只返回一个值.要开发返回多个值的存储过程,需要使用带有INOUT或OUT参数的存储过程 ...

  5. 服务器文档下载zip格式 SQL Server SQL分页查询 C#过滤html标签 EF 延时加载与死锁 在JS方法中返回多个值的三种方法(转载) IEnumerable,ICollection,IList接口问题 不吹不擂,你想要的Python面试都在这里了【315+道题】 基于mvc三层架构和ajax技术实现最简单的文件上传 事件管理

    服务器文档下载zip格式   刚好这次项目中遇到了这个东西,就来弄一下,挺简单的,但是前台调用的时候弄错了,浪费了大半天的时间,本人也是菜鸟一枚.开始吧.(MVC的) @using Rattan.Co ...

  6. Python学习教程(learning Python)--2.3.5 Python返回多个值问题

    本节主要学习Python的函数是如何同时返回多个值的问题. 在学习Python的时候惊奇的发现,Python的函数可以同时返回多个值,很有意思. #define function sum def su ...

  7. 2017寒假零基础学习Python系列之函数之 返回多个值

    Python也和C语言一样有自己的标准库,不过在Python中叫做模块(module),这个和C语言中的头文件以及Java中的包类似,其中math就是其中之一,math模块中提供了sin()和cos( ...

  8. Python 函数返回值

    本章详细介绍 返回值: 0x 00 返回值简介 0x 01 指定返回值与隐含返回值 0x 02 return 语句位置与多条 return 语句 0x 03 返回值类型 0x 04 函数嵌套 0x 0 ...

  9. Python函数返回不定数量的值

    Python的函数是可以return多个值的,但其本质上还是返回单个值,只是利用了tuple的自动打包,将多个值打包成单个tuple返回. 使用代码验证: def func_a(): return 1 ...

随机推荐

  1. puthon文件头

    #!/usr/bin/u/ubv/a python # -*- coding:utf-8 -*-

  2. 运维rpm语法

    Linux软件包分类 rpm 常用命令1.安装一个包 # rpm -ivh 2.升级一个包 # rpm -Uvh 3.卸载一个包 # rpm -e 4.安装参数 --force 即使覆盖属于其它包的文 ...

  3. Python基础学习总结(持续更新)

    https://www.cnblogs.com/jin-xin/articles/7459977.html 嗯,学完一天,白天上班,眼睛要瞎了= = DAY1 1,计算机基础. CPU:相当于人的大脑 ...

  4. VmwareTools以及搜狗拼音的安装

    已经那么多年工作下来了,结果装linux还是那么 的费劲! 装的是纯净版Ubuntu16.04版本,17.04怕不稳定就没装, 装了发现VmwareTools是暗的,以前也遇到过这个问题,但是真的忘记 ...

  5. PHP错误日志和内存查看(转)

    本篇文章给大家带来的内容是关于PHP错误日志和内存查看的方法介绍(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.通过命令查看服务器上一共开了多少的 php-cgi 进程: ...

  6. vue b表单

    你可以用 v-model 指令在表单控件元素上创建双向数据绑定. v-model 会根据控件类型自动选取正确的方法来更新元素. 输入框 实例中演示了 input 和 textarea 元素中使用 v- ...

  7. canvas 填充图片

    画一个更骚气的圆 https://juejin.im/post/5781d0495bbb500061fd683d

  8. JSF相关介绍

    About JavaServer Faces technology simplifies building user interfaces for JavaServer applications. D ...

  9. fiddler近期用到的一些新功能

    一,AutoResponder导出导入 将AutoResponder中的规则全部选中,右键选择 Export All,可以导出成rule.farx文件 导入时选择Add Rule右边的Import按钮 ...

  10. Hello2实例的分析

    首先: java EE 上的hello2项目是一个部署在glass fish上的开发源码的java web项目,在终端通过命令行使用maven进行打包成.war文件,最后部署到相关的glass fis ...