Ich verwende py.test zum Testen.tmpdir in py.test setup_class
In setup_class() ich verwenden müssen tmpdir für meine Klasse Konstruktor:
class TestMyClass:
def setup_class(self):
self.t = MyClass(path=tmpdir)
def test_test(self):
assert True
Und ich habe einen Fehler:
NameError: name 'tmpdir' is not defined
ich nicht setup_class(self, tmpdir)
verwenden können.
Wenn ich diesen Code verwenden:
def test_needsfiles(tmpdir):
print(tmpdir)
assert 0
Es ist Arbeit, aber ich brauche tmpdir in meiner Klasse Konstruktor.
Wie geht das?
Danke!
UPD
Ich versuche, dies zu tun:
@pytest.yield_fixture()
def constructor(tmpdir):
_t = MyClass(path=str(tmpdir))
yield _t
class TestMyClass:
def test_test(self, constructor):
pass
Aber ich kann nicht Tive in Befestigung verwenden:
ScopeMismatch: You tried to access the 'function' scoped fixture 'tmpdir' with a 'module' scoped request object, involved factories
thx, aber die Frage ist etwa ** py.test ** – tim