throttleNetwork
Ograniczanie możliwości sieciowych przeglądarki. Może to pomóc w symulowaniu określonych scenariuszy, w których użytkownik traci połączenie internetowe i Twoja aplikacja musi się do tego dostosować.
Dostępnych jest wiele predefiniowanych ustawień z domyślnymi konfiguracjami dla ułatwienia użytkowania.
Są to offline, GPRS, Regular2G, Good2G, Regular3G, Good3G,
Regular4G, DSL, WiFi, online.
Możesz zobaczyć wartości dla tych predefiniowanych ustawień w kodzie źródłowym.
Zauważ, że korzystanie z polecenia throttleNetwork wymaga wsparcia dla protokołu Chrome DevTools i np.
nie może być używane podczas uruchamiania zautomatyzowanych testów w chmurze. Chrome DevTools protocol nie jest instalowany domyślnie,
użyj npm install puppeteer-core, aby go zainstalować.
Dowiedz się więcej w sekcji Protokoły automatyzacji.
Użycie
browser.throttleNetwork({ offline, latency, downloadThroughput, uploadThroughput })
Parametry
| Nazwa | Typ | Szczegóły |
|---|---|---|
params | ThrottleOptions | parametry do ograniczania |
params.offline | boolean | Wartość true, aby symulować odłączenie od internetu. |
params.latency | number | Minimalne opóźnienie od wysłania żądania do otrzymania nagłówków odpowiedzi (ms). |
params.downloadThroughput | number | Maksymalna zagregowana przepustowość pobierania (bajty/sek). -1 wyłącza ograniczanie pobierania. |
params.uploadThroughput | number | Maksymalna zagregowana przepustowość wysyłania (bajty/sek). -1 wyłącza ograniczanie wysyłania. |
Przykład
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
})
});