Перейти до основного вмісту

throttleNetwork

Обмежує мережеві можливості браузера. Це може допомогти емулювати певні сценарії, коли користувач втрачає з'єднання з Інтернетом, і ваш додаток повинен вирішити цю проблему.

Існує багато попередньо встановлених конфігурацій для зручного використання. Це offline, GPRS, Regular2G, Good2G, Regular3G, Good3G, Regular4G, DSL, WiFi, online.

Ви можете побачити значення для цих пресетів у вихідному коді.

інфо

Зауважте, що використання команди throttleNetwork вимагає підтримки протоколу Chrome DevTools і, наприклад, не може використовуватися при запуску автоматизованих тестів у хмарі. Chrome DevTools не встановлюється за замовчуванням, використовуйте npm install puppeteer-core для його встановлення. Дізнайтеся більше в розділі Протоколи автоматизації.

Використання
browser.throttleNetwork({ offline, latency, downloadThroughput, uploadThroughput })
Параметри
Ім'яТипДеталі
paramsThrottleOptionsпараметри для обмеження
params.offlinebooleanTrue для емуляції відключення від Інтернету.
params.latencynumberМінімальна затримка від надсилання запиту до отримання заголовків відповіді (мс).
params.downloadThroughputnumberМаксимальна сукупна пропускна здатність завантаження (байт/сек). -1 вимикає обмеження завантаження.
params.uploadThroughputnumberМаксимальна сукупна пропускна здатність вивантаження (байт/сек). -1 вимикає обмеження вивантаження.
Приклад
throttleNetwork.js
it('should throttle the network', async () => {
// via static string preset
await browser.throttleNetwork('Regular3G')

// via custom values
await browser.throttleNetwork({
offline: false,
downloadThroughput: 200 * 1024 / 8,
uploadThroughput: 200 * 1024 / 8,
latency: 20
})
});

Welcome! How can I help?

WebdriverIO AI Copilot