Я тестирую приложение / сайт Gatsby с Cypress. Он делает несколько вызовов API с разных страниц. Мы приняли решение заглушить и высмеять все эти запросы, поэтому наши тесты никогда не должны выходить за рамки нашего живого API.
Я искал способ получить ошибку Cypress, если был сделан запрос к любой из наших конечных точек API, который не был заглушен, и я нашел параметр конфигурации force404
( docs ) для cy.server
, который заставляет 404 возвращаться для любых маршрутов, которые не заглушены. Это работает хорошо, но на самом деле слишком хорошо. Гэтсби использует XHR внутри для предварительной загрузки других страниц (среди прочего), и это заставляет всех возвращать также 404, эффективно разрушая приложение.
Есть ли способ настроить cy.server
, чтобы он возвращал только 404 с маршрутов, которые не являются заглушками, которые находятся в определенном домене. Например, если наш домен API является api.example.com
. Есть ли способ настроить cy.server
, чтобы возвращать 404 только для запросов к api.example.com
, которые не являются заглушками, оставляя запросы в других доменах или в том же домене нетронутыми.