with step(...) обычно обозначает именованный шаг отчёта, например в Allure: действия внутри блока группируются, а ошибка связывается с этим шагом.
Для чего в тесте используется конструкция `with step(...)`?
with step(...) обычно обозначает именованный шаг отчёта, например в Allure: действия внутри блока группируются, а ошибка связывается с этим шагом.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
with step(...) обычно обозначает именованный шаг отчёта, например в Allure: действия внутри блока группируются, а ошибка связывается с этим шагом.
Точное поведение зависит от импортированного step, поэтому сначала смотрят библиотеку. Как context manager он может фиксировать начало, окончание и статус блока, помогая читать отчёт и диагностировать падение. Сам по себе step не выполняет проверку и не делает assertion мягким: исключение обычно продолжает распространяться. Названия должны описывать действие или проверяемый результат без секретов и персональных данных. Для очистки ресурсов нужен отдельный надёжный teardown.