我正在使用pytest并尝试创建应该在我的项目的许多类中使用的对象。 我试图将对象传递给其中一个类,但是pycharm向我显示了“未解析的引用'custom_inst'。
这是我的代码:
conftest.py:
@pytest.fixture(scope="function", autouse=True)
def fixture_example(request):
custom_inst = FixtureClass()
yield custom_inst
custom_inst.do_something()
某些班级
@pytest.mark.usefixtures('fixture_example')
class DummyClass(object):
def __init__(self, arg1=None, arg2=None):
self.arg1 = arg1
self.arg2 = arg2
self.custom_inst = fixture_example
如何将实例“ custom_inst”作为类成员传递给DummyClass?
谢谢。
答案 0 :(得分:0)
问题是您尝试混合pytest实体(夹具)和非pytest实体(类DummyClass)。
在这种情况下,DummyClass将永远不会由pytest执行,因为pytest运行器会收集并执行start from "Test" keyword only的类。 另一方面,如果您直接调用DummyClass(),由于只有pytest运行程序会使用Fixture_example,因此不会执行fix_example。