Сервис перехвата
wdio-intercept-service - это сторонний пакет, для получения дополнительной информации посетите GitHub | npm
🕸 Перехват и проверка HTTP ajax-вызовов в webdriver.io
Это плагин для webdriver.io. Если вы еще не знакомы с ним, попробуйте - это действительно круто.
Хотя selenium и webdriver используются для e2e и особенно для UI-тестирования, вам может понадобиться оценить HTTP-запросы, выполняемые вашим клиентским кодом (например, когда у вас нет немедленной обратной связи в интерфейсе, как в метриках или запросах трекинга). С wdio-intercept-service вы можете перехватывать ajax HTTP-вызовы, инициированные какими-либо действиями пользователя (например, нажатием кнопки и т.д.), и делать утверждения о запросе и соответствующих ответах позже.
Есть одно ограничение: вы не можете перехватывать HTTP-вызовы, которые инициируются при загрузке страницы (как в большинстве SPA), поскольку для этого требуется некоторая настройка, которую можно выполнить только после загрузки страницы (из-за ограничений в selenium). Это означает, что вы можете перехватывать только запросы, которые были инициированы внутри теста. Если вас это устраивает, этот плагин может вам подойти, так что читайте дальше.
Требования
- webdriver.io v5.x или новее.
Внимание! Если вы все еще используете webdriver.io v4, пожалуйста, используйте ветку v2.x этого плагина!
Установка
npm install wdio-intercept-service -D
Использование
Использование с WebDriver CLI
Достаточно просто добавить wdio-intercept-service в ваш wdio.conf.js
:
exports.config = {
// ...
services: ['intercept']
// ...
};
и все готово.