Выбор ответа Junior Тестирование и pytest обновлено

Встроенная фикстура monkeypatch

Вопрос

Для чего встроенная фикстура monkeypatch?

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

Выберите вариант, и откроется разбор.

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

Коротко

Правильный ответ: Временно подменить атрибут или env с откатом после теста. monkeypatch.setattr, setenv, setitem, chdir и другие меняют окружение только на время теста и сами всё возвращают.

Варианты ответа

  1. Временно подменить атрибут или env с откатом после тестаправильный ответ
  2. Ускорить выполнение теста за счёт кеша
  3. Запустить тест в отдельном процессе
  4. Отключить вывод в консоль на время теста

Разбор

monkeypatch.setattr, setenv, setitem, chdir и другие меняют окружение только на время теста и сами всё возвращают. Без отката подмена протекла бы в другие тесты. Вывод перехватывает capsys, отдельные процессы даёт pytest-xdist или pytest-forked.

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

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

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