Fixtures задают зависимости теста и управляют подготовкой и освобождением ресурсов, отделяя инфраструктуру от самой проверки поведения.
Какую роль играет механизм фикстур в Pytest в структуре тестов?
Fixtures задают зависимости теста и управляют подготовкой и освобождением ресурсов, отделяя инфраструктуру от самой проверки поведения.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Fixtures задают зависимости теста и управляют подготовкой и освобождением ресурсов, отделяя инфраструктуру от самой проверки поведения.
Тест запрашивает fixture по имени аргумента, а pytest строит цепочку зависимостей. Fixture может вернуть API-клиент, данные или фабрику; код после yield выполняет teardown. Scope задаёт область переиспользования, поэтому session-fixture с изменяемым состоянием требует осторожности. Хорошая структура делает зависимости явными и минимальными. Избыточный autouse или одна огромная fixture скрывают setup и усложняют диагностику. Очистку нужно продумывать и для частично неуспешной подготовки.