import pytest
@pytest.fixture
def new_object():
return list()
@pytest.fixture
def a_string(new_object):
# Change this instance of the object
new_object.append(1)
return "a string"
def test_1(new_object):
assert len(new_object) == 0
def test_2(a_string, new_object):
assert len(new_object) == 0
< /code>
Der erste Test geht jedoch durch, aber der zweite fällt fehl. def test_2(a_string, new_object):
> assert len(new_object) == 0
E assert 1 == 0
E + where 1 = len([1])
tests/test_pytest_list.py:21: AssertionError
================================================ short test summary info =================================================
FAILED tests/test_pytest_list.py::test_2 - assert 1 == 0
============================================== 1 failed, 1 passed in 0.36s ===============================================
< /code>
Ich erwartete, dass Feorturen neue Instanzen eines Objekts übergeben würden (sofern nicht anders angegeben), nicht das gleiche Objekt, das eine andere Fixture geändert hat. /> qualifiziert sich ein anderes Gerät nicht als Funktion? class = "Lang-Py PrettyPrint-Override">@pytest.fixture
def new_object():
"""I want to test instances of this class"""
return list()
@pytest.fixture
def case_1(new_object):
new_object.append(1)
return new_object
@pytest.fixture
def case_2(new_object):
new_object.append(2)
return new_object
def test_cases(case_1, case_2):
assert sum(case_1) + sum(case_2) == 3 # fails: assert (3 + 3) == 3
Ich bin sehr verblüfft und ist ein wenig besorgt, um das folgende Verhalten zu entdecken, bei dem ich zwei Tests und zwei Vorrichtungen habe.[code]import pytest
@pytest.fixture def new_object(): return list()
@pytest.fixture def a_string(new_object): # Change this instance of the object new_object.append(1) return "a string"
< /code> Der erste Test geht jedoch durch, aber der zweite fällt fehl. def test_2(a_string, new_object): > assert len(new_object) == 0 E assert 1 == 0 E + where 1 = len([1])
tests/test_pytest_list.py:21: AssertionError ================================================ short test summary info ================================================= FAILED tests/test_pytest_list.py::test_2 - assert 1 == 0 ============================================== 1 failed, 1 passed in 0.36s =============================================== < /code> Ich erwartete, dass Feorturen neue Instanzen eines Objekts übergeben würden (sofern nicht anders angegeben), nicht das gleiche Objekt, das eine andere Fixture geändert hat. /> qualifiziert sich ein anderes Gerät nicht als Funktion? class = "Lang-Py PrettyPrint-Override">@pytest.fixture def new_object(): """I want to test instances of this class""" return list()
Ich habe Code, der Twisted verwendet, also habe ich eine Testfunktion dafür geschrieben und ihn mit @pyTest_twisted.EnsuredEferred dekoriert. Die Funktion wartet auf einige Aufschiebungen. Dann muss...
Ich habe eine App, die mit einer MainActivity und mehreren Fragmenten strukturiert ist, mit denen über einige ImageButtons in dieser Aktivität kommuniziert wird. In einem Fragment (...
In diesem Code möchte ich die Vorder- und Rückseite ändern, wenn ich sie separat verwende, funktioniert
aber in diesem Code ändert es nicht die Vorderfarbe in VSCODE -Terminal, sondern in anderen...