throttleNetwork
Limita le capacità di rete del browser. Questo può aiutare a emulare determinati scenari in cui un utente perde la connessione internet e la tua app deve affrontare questa situazione.
Ci sono molti preset disponibili con configurazioni predefinite per facilità d'uso.
Sono offline
, GPRS
, Regular2G
, Good2G
, Regular3G
, Good3G
,
Regular4G
, DSL
, WiFi
, online
.
Puoi vedere i valori per questi preset nel codice sorgente.
Nota che l'utilizzo del comando throttleNetwork
richiede il supporto del protocollo Chrome DevTools e, ad esempio,
non può essere utilizzato durante l'esecuzione di test automatizzati nel cloud. Il protocollo Chrome DevTools non è installato per impostazione predefinita,
usa npm install puppeteer-core
per installarlo.
Scopri di più nella sezione Protocolli di Automazione.
Utilizzo
browser.throttleNetwork({ offline, latency, downloadThroughput, uploadThroughput })
Parametri
Nome | Tipo | Dettagli |
---|---|---|
params | ThrottleOptions | parametri per la limitazione |
params.offline | boolean | True per emulare la disconnessione da internet. |
params.latency | number | Latenza minima dall'invio della richiesta alla ricezione delle intestazioni di risposta (ms). |
params.downloadThroughput | number | Throughput massimo aggregato di download (bytes/sec). -1 disabilita la limitazione del download. |
params.uploadThroughput | number | Throughput massimo aggregato di upload (bytes/sec). -1 disabilita la limitazione dell'upload. |
Esempio
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
})
});