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"])
  • 相关阅读:
    inline函数
    STL——萃取机制(Traits)
    linux下静态库和动态库的制作与使用
    TCP连接(client、server)状态转换
    构造、拷贝构造、赋值、析构
    python数据类型分类
    考研结束,重返python
    使用Pyquery+selenium抓取淘宝商品信息
    python + Jquery,抓取西东网上的Java教程资源网址
    自定义元类控制类的实例化行为
  • 原文地址:https://www.cnblogs.com/nuonuozhou/p/10429797.html
Copyright © 2011-2022 走看看