前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >pytest 中fixture传递参数到case中

pytest 中fixture传递参数到case中

原创
作者头像
用户9955628
发布2022-08-25 13:39:38
7510
发布2022-08-25 13:39:38
举报
文章被收录于专栏:python3基础算法python3基础算法

fixture结合yield可以完美的替代setup和teardown,并且使用例更加简洁。

代码语言:javascript
复制
import pytest

#pytest中利用fixture完成setup和teardown,测试用例中常常需要传递参数到case中,yeild返回参数即可
class Test_pro():
    @pytest.fixture()
    def init_project(self):
        print("set up")
        project_id = 123
        yield project_id
        print("teardown")
    def test_pro(self,init_project):
        print(init_project)
#返回多个参数时怎么处理? yield 多个参数返回时是以元组的形式(123, 999),通过下标index访问即可
class Test_pro1():
    @pytest.fixture()
    def init_project(self):
        print("set up")
        project_id = 123
        project_id2 = 999
        yield project_id,project_id2
        print("teardown")
    def test_pro(self,init_project):
        print(init_project)
        print(init_project[0])
============================== 1 passed in 0.01s ===============================
Process finished with exit code 0
set up
PASSED                                    [100%](123, 999)
123
teardown

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档