Карточка Senior pytest и фикстуры обновлено

Фикстура-фабрика

Вопрос

Что такое фикстура-фабрика и когда она нужна?

Попробуйте сами

Ответьте про себя или вслух, потом откройте ответ и сверьтесь.

Показать ответ и разбор

Коротко

Фикстура возвращает функцию, которая создаёт объекты с нужными параметрами, и запоминает созданное, чтобы удалить в teardown. Нужна, когда тесту требуется несколько объектов или разные варианты.

Ответ

Фикстура возвращает функцию, которая создаёт объекты с нужными параметрами, и запоминает созданное, чтобы удалить в teardown. Нужна, когда тесту требуется несколько объектов или разные варианты.

Разбор

Пример: make_user(role="admin") вызывается в тесте дважды, а после yield фикстура удаляет всех созданных пользователей.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме