В фикстуре каждый раз создаётся пользователь, из-за чего тестовые пользователи накапливаются. Что можно добавить?

Добавьте гарантированную очистку созданного пользователя после теста, например teardown через yield-фикстуру и finally. Удалять нужно только сущность, созданную данным запуском.

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

Что ответить на собеседовании

Добавьте гарантированную очистку созданного пользователя после теста, например teardown через yield-фикстуру и finally. Удалять нужно только сущность, созданную данным запуском.

Подробный разбор

Ответ с пояснениями

Добавьте гарантированную очистку созданного пользователя после теста, например teardown через yield-фикстуру и finally. Удалять нужно только сущность, созданную данным запуском.

Схема фикстуры:

@pytest.fixture
def user(api):
    created = api.create_user()
    try:
        yield created
    finally:
        api.delete_user(created.id)

Названия методов здесь условные. Очистка должна учитывать повторный вызов, уже удалённую запись и зависимые данные. Аварийное завершение процесса может не выполнить finally, поэтому дополнительно полезны метка запуска и безопасная периодическая уборка тестового стенда с согласованными границами.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее