Если зависимость вызывается браузером, перехватите нужный URL через page.route или context.route и верните подготовленный ответ. Серверные вызовы backend так не перехватываются.
Как замокать внешнюю зависимость в Playwright?
Если зависимость вызывается браузером, перехватите нужный URL через page.route или context.route и верните подготовленный ответ. Серверные вызовы backend так не перехватываются.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Если зависимость вызывается браузером, перехватите нужный URL через page.route или context.route и верните подготовленный ответ. Серверные вызовы backend так не перехватываются.
Пример JS/TS:
await page.route('**/api/profile', route => route.fulfill({
status: 200,
contentType: 'application/json',
body: JSON.stringify({ id: 1, name: 'Test user' })
}));
Правило регистрируют до действия, запускающего запрос. Уточняйте метод и URL, чтобы не скрыть лишние обращения. Для внешней зависимости самого backend нужен stub-сервис или другая серверная подмена. Проверяйте, что mock соответствует настоящему контракту и не содержит чувствительных данных.