Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад

Как создать фикстуру, которая выполняется после теста?

Проверяет знание способов выполнения очистки после тестов.

Короткий ответ

Для выполнения кода после теста используйте:

  1. yield в фикстуре (код после yield)

  2. request.addfinalizer()

  3. Фикстуру с autouse=True

Длинный ответ

Способ 1: Использование yield

@pytest.fixture
def clean_up():
    print("Настройка перед тестом")
    yield
    print("Очистка после теста")  # Выполнится после теста

Способ 2: addfinalizer

@pytest.fixture
def resource(request):
    print("Настройка ресурса")
    
    def cleanup():
        print("Очистка ресурса")
    request.addfinalizer(cleanup)

Когда использовать:

  • Для освобождения ресурсов (файлы, соединения)

  • Для сброса состояния системы

Уровень

  • Рейтинг:

    1

  • Сложность:

    6

Навыки

  • PyTest

Ключевые слова

#teardown

#finalizer

#cleanup

Подпишись на QA Engineer в телеграм