Проверяет понимание системы фикстур PyTest.
Фикстуры - это функции для подготовки и очистки тестового окружения. Они состоят из:
Предусловия (настройка перед тестом)
yield (передача ресурса в тест)
Постусловия (очистка после теста)
Фикстуры помогают избежать дублирования кода в тестах. Их основные компоненты:
Структура фикстуры:
@pytest.fixture
def database_connection():
# Предусловие - создание соединения
db = Database()
db.connect()
yield db # Передача объекта в тест
# Постусловие - закрытие соединения
db.disconnect()Использование в тесте:
def test_query(database_connection):
result = database_connection.query("SELECT * FROM users")
assert len(result) > 0