Я пытаюсь запустить два теста в pytest с двумя различными экземплярами класса attr (возвращаемого из фиксации в области функций) в качестве входных аргументов.Первый объект msg также обнаруживается во втором тесте.Мой пример:
import attr
import pytest
import uuid
@attr.s
class Receiver:
internal_dict = attr.ib(default=dict())
def send_message(self, msg):
self.internal_dict[msg] = msg
@pytest.fixture
def msg():
yield uuid.uuid1()
@pytest.fixture
def receiver():
yield Receiver()
def test_send_msg_1(msg, receiver):
receiver.send_message(msg)
assert len(receiver.internal_dict) == 1
def test_send_msg_2(msg, receiver):
receiver.send_message(msg)
print("internal_dict:{}".format(receiver.internal_dict))
assert len(receiver.internal_dict) == 1 # FAILS
Как происходит изменение состояния между двумя тестами?