пример прибора
Это очень хороший пример, похожий на ваш случай
2 возможных ошибки в вашем коде:
def test_connect(db):
должно иметьбыть def test_connect(self, db):
внутри класса
def sampleconnect(self):
не имеет параметров, в то время как connect_to_s3.SampleClass.samplemethod(db)
не имеет, не уверен, что это статический метод или метод класса?!
Вот хороший пример, скопированный и вставленныйпо ссылке.
# content of test_db_transact.py
import pytest
class DB:
def __init__(self):
self.intransaction = []
def begin(self, name):
self.intransaction.append(name)
def rollback(self):
self.intransaction.pop()
@pytest.fixture(scope="module")
def db():
return DB()
class TestClass:
@pytest.fixture(autouse=True)
def transact(self, request, db):
db.begin(request.function.__name__)
yield
db.rollback()
def test_method1(self, db):
assert db.intransaction == ["test_method1"]
def test_method2(self, db):
assert db.intransaction == ["test_method2"]