喜欢这个
@pytest.fixture
def myfixture():
# creates a complex object
def test_compare(myfixture,myfixture):
#compares
有没有办法知道我在做哪个灯具? 生成的对象是不同的
由于
答案 0 :(得分:1)
您正在寻找工厂模式https://docs.pytest.org/en/latest/fixture.html#factories-as-fixtures
关于固定装置工厂Why would a pytest factory as fixture be used over a factory function?的优势的问题在这里
回答您的问题
@pytest.fixture
def myfixture():
def _make_fixture():
# creates a complex object
return _make_fixture
def test_compare(myfixture):
data1 = myfixture()
data2 = myfixture()
#compares
答案 1 :(得分:0)
为什么要比较夹具返回的对象?固定装置并非如此。
根据文档,
测试装置的目的是提供一个固定的基线,测试可以可靠地重复执行。
如果你想比较返回的物体,只需将它作为功能,而不是作为fixture.Like。
def myfixture():
# creates a complex object
def test_compare():
a=myfixture()
b=myfixture()
#compare a and b