throttleNetwork
Limita las capacidades de red del navegador. Esto puede ayudar a emular ciertos escenarios donde un usuario pierde su conexión a internet y tu aplicación necesita abordar esa situación.
Hay muchos preajustes disponibles con configuraciones predeterminadas para facilitar su uso.
Estos son offline
, GPRS
, Regular2G
, Good2G
, Regular3G
, Good3G
,
Regular4G
, DSL
, WiFi
, online
.
Puedes ver los valores para estos preajustes en el código fuente.
Ten en cuenta que usar el comando throttleNetwork
requiere soporte para el protocolo Chrome DevTools y, por ejemplo,
no se puede usar cuando se ejecutan pruebas automatizadas en la nube. El protocolo Chrome DevTools no está instalado por defecto,
usa npm install puppeteer-core
para instalarlo.
Obtén más información en la sección Protocolos de Automatización.
Uso
browser.throttleNetwork({ offline, latency, downloadThroughput, uploadThroughput })
Parámetros
Nombre | Tipo | Detalles |
---|---|---|
params | ThrottleOptions | parámetros para la limitación |
params.offline | boolean | True para emular la desconexión de internet. |
params.latency | number | Latencia mínima desde el envío de la solicitud hasta la recepción de los encabezados de respuesta (ms). |
params.downloadThroughput | number | Rendimiento máximo de descarga agregado (bytes/seg). -1 desactiva la limitación de descarga. |
params.uploadThroughput | number | Rendimiento máximo de carga agregado (bytes/seg). -1 desactiva la limitación de carga. |
Ejemplo
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
})
});