zoukankan      html  css  js  c++  java
  • Pytest学习之使用多个fixture

    #使用多个fixture
    #如果用例需要用到多个fixture的返回数据,fixture也可以return一个元组、list或字典,然后从里面取出对应数据。

    import pytest
    @pytest.fixture()
    def user():
    print("获取用户名")
    a ="nuo"
    b="123456"
    return (a,b)

    def test_1(user):
    u=user[0]
    p=user[1]
    print("测试账号:%s,密码“%s"%(u,p))
    assert u =="nuo"

    if __name__ == '__main__':
    pytest.main(["-s","fixtures.py"])

    #
    # #当然也可以分开定义成多个fixture,然后test_用例传多个fixture参数
    import pytest
    @pytest.fixture()
    def user():
    print("获取用户名")
    a="nuo"
    return a
    @pytest.fixture()
    def psw():
    print("获取密码")
    b="123456"
    return b

    def test_1(user,psw):
    '''传多个fixture'''
    print("测试账号:%s,测试密码:%s"%(user,psw))
    assert user == "nuo"

    if __name__ == '__main__':
    pytest.main(["-s","fixtures.py"])

    # #fixture与fixture互相调用
    @pytest.fixture()
    def first():
    print("获取用户名")
    a ="nuo"
    return a

    @pytest.fixture()
    def second(first):
    '''pswd调用user fixture'''
    a=first
    b="1234556"
    return (a,b)

    def test_1(second):
    '''用例传fixture'''
    print("测试账号:%s,密码:%s"%(second[0],second[1]))
    assert second[0]=="nuo"

    if __name__ == '__main__':
    pytest.main(["-s","fixtures.py"])


    '''fixture的scope=session 跨.py文件调用'''
    def test_2(first):
    '''用例传fixture'''
    print("测试账号:%s"%first)
    assert first == "nuo"

    if __name__ == '__main__':
    pytest.main(["-s","fixtures.py"])
  • 相关阅读:
    ESFramework Demo -- 动态组及群聊Demo(附源码)
    反射整理学习
    JavaScript 每周导读
    SQLSERVER 中的 with锁级别
    代码细节重构:请对我的代码指手划脚
    SQLServer查询死锁语句
    模块加载系统 v16
    数据结构之排序算法C#实现
    浅谈操作系统对内存的管理
    如何编写可维护的面向对象JavaScript代码
  • 原文地址:https://www.cnblogs.com/nuonuozhou/p/10429797.html
Copyright © 2011-2022 走看看