Выбор ответа Junior Playwright обновлено

Подмена ответа сервера

Вопрос

Каким API Playwright можно подменить ответ GET /api/products в UI-тесте?

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

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

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

Коротко

Правильный ответ: page.route() с route.fulfill(). page.route перехватывает запросы по шаблону URL, а route.fulfill отдаёт свой ответ (статус, JSON). waitForResponse только ждёт ответ, request.get сам делает API-запрос без браузера (опции mock у него нет), а событие response лишь сообщает…

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

  1. page.route() с route.fulfill()правильный ответ
  2. page.waitForResponse() с колбэком
  3. request.get() с параметром mock
  4. page.on("response") с подменой

Разбор

page.route перехватывает запросы по шаблону URL, а route.fulfill отдаёт свой ответ (статус, JSON). waitForResponse только ждёт ответ, request.get сам делает API-запрос без браузера (опции mock у него нет), а событие response лишь сообщает о пришедшем ответе и подменить его не может.

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

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

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