throttleNetwork
Limitez les capacités réseau du navigateur. Cela peut aider à simuler certains scénarios où un utilisateur perd sa connexion internet et votre application doit y faire face.
De nombreux préréglages sont disponibles avec des configurations par défaut pour faciliter l'utilisation.
Il s'agit de offline
, GPRS
, Regular2G
, Good2G
, Regular3G
, Good3G
,
Regular4G
, DSL
, WiFi
, online
.
Vous pouvez voir les valeurs de ces préréglages dans le code source.
Notez que l'utilisation de la commande throttleNetwork
nécessite la prise en charge du protocole Chrome DevTools et, par exemple,
ne peut pas être utilisée lors de l'exécution de tests automatisés dans le cloud. Chrome DevTools protocol n'est pas installé par défaut,
utilisez npm install puppeteer-core
pour l'installer.
En savoir plus dans la section Protocoles d'automatisation.
Utilisation
browser.throttleNetwork({ offline, latency, downloadThroughput, uploadThroughput })
Paramètres
Nom | Type | Détails |
---|---|---|
params | ThrottleOptions | paramètres pour la limitation |
params.offline | boolean | Vrai pour simuler une déconnexion internet. |
params.latency | number | Latence minimale entre l'envoi de la requête et la réception des en-têtes de réponse (ms). |
params.downloadThroughput | number | Débit de téléchargement agrégé maximal (octets/sec). -1 désactive la limitation du téléchargement. |
params.uploadThroughput | number | Débit d'envoi agrégé maximal (octets/sec). -1 désactive la limitation de l'envoi. |
Exemple
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
})
});