Кукловод: хранение и доступ к контекстным или метаданным за посещение страницы - PullRequest
0 голосов
/ 16 февраля 2020

Я экспериментирую с автоматическим генерированием результатов, используя @xstate/test и комбинируя его с кукловодом и шуткой. Используя jest's beforeAll и afterAll , я звоню page.setRequestInterception и регистрирую обратный вызов для перехвата сетевых запросов и проверки их ответа.

XState генерирует пути, которые я хочу протестировать, и по каждому пути я могу определить, хочет ли тест протестировать, что должно произойти, если API не работает или успешно. Я застрял в том, как правильно передать это обратно кукловоду и получить доступ к этой информации в моем обработчике запросов.

1 Ответ

0 голосов
/ 16 февраля 2020

Одна опция, которую я обнаружил, - это использование параметров запроса. Объект Request, который передается в обработчик событий, имеет доступ к фрейму , который сделал запрос.

В моем тесте:

it(..., async () => {
  await page.goto('http://localhost:3000?failApi=true')
  ..

и в моем обработчик запроса:

page.on('request', req => {
   // check req.frame.url() here and make choices
...
...