Geekflare cuenta con el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliados comprando enlaces en este sitio.
Comparte en:

¿Cómo realizar pruebas de carga con navegadores reales usando Flood Element?

elemento de inundación
Escáner de seguridad de aplicaciones web Invicti – la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

Entonces, estás pensando en realizar pruebas de carga.

Tal vez, se sienta frustrado con las soluciones actuales que está utilizando y descubra que es demasiado difícil escribir y mantener sus pruebas. O tal vez, estás pensando en haciendo pruebas de carga por primera vez. De cualquier manera, es un gran primer paso pensar en las pruebas de carga; muchas empresas no lo hacen y sufren las consecuencias.

Existe un vínculo establecido entre el rendimiento de la aplicación y las métricas comerciales esenciales, como los ingresos, los registros de clientes o la satisfacción general del cliente. Todas las empresas que hacen negocios en la web deben querer asegurarse de que el rendimiento no afecte negativamente a estas medidas clave. Incluso cuando estas medidas estén mejorando, es posible que la aplicación funcione mejor para consumir menos recursos, lo que le permitirá ahorrar dinero a usted y a sus usuarios.

Ya sea que sea nuevo en las pruebas de carga o tenga experiencia en el campo, es probable que conozca la asombrosa variedad de herramientas y enfoques disponibles para hacer el trabajo. Hoy me gustaría contarles acerca de mi nueva herramienta de prueba de carga favorita: Elemento de inundación.

inundaciónes

Muchas herramientas populares operan a nivel de protocolo: intentan aproximarse al comportamiento de los usuarios en su aplicación emitiendo solicitudes de red. Sin embargo, en la World Wide Web de hoy, las aplicaciones web se están volviendo cada vez más sofisticadas y utilizan muchas más funciones de la lista cada vez mayor de los navegadores que nunca.

Incluso las aplicaciones aparentemente simples, como una tienda en línea, utilizan una gran cantidad de funciones del navegador para que la experiencia de elegir artículos, hacer pedidos y pagar en línea sea lo más sencilla posible para el usuario.

nivel de prueba de carga

Y así, en esta era moderna de la web, las pruebas de usuario a nivel de protocolo (PLU) solo pueden darnos una parte de la imagen del rendimiento de nuestra aplicación. Por el contrario, las nuevas herramientas como Flood Element prueban simulando el comportamiento del usuario utilizando navegadores web reales. A este enfoque lo llamamos usuarios de nivel de navegador (BLU).

En Flood Element, el comportamiento del usuario simulado se define mediante acciones simples y naturales, como hacer clic en enlaces y botones, rellenar formularios web, etc. Una vez que haya definido el comportamiento, es muy fácil ejecutarlo a gran escala en flood.io, y por gran escala, me refiero a miles de usuarios y de todo el mundo.

Las pruebas de carga con Flood Element pueden ayudarlo a desarrollar una vista holística e intuitiva del rendimiento de su aplicación tal como lo experimenta un usuario. Dado que pensar como usuarios es lo que todos hacemos naturalmente cuando somos usuarios, también es mucho más cómodo comenzar con una prueba Element BLU que con las herramientas PLU tradicionales.

diluvio-azul-pl
Los BLU lo ayudan a obtener una vista realista del rendimiento de toda su aplicación, de arriba a abajo. Los PLU solo prueban realmente lo que está debajo de la línea de flotación: su red y su infraestructura de servidor.

The holistic view

Usar Flood Element para medir el rendimiento en toda su aplicación desde la perspectiva de los usuarios es una excelente manera de desarrollar una vista holística del rendimiento de su aplicación y, por lo tanto, defenderse de cambios inexplicables, ya sean anomalías temporales o quizás regresiones en el código.

Las pruebas Flood Element BLU proporcionan una visión del rendimiento mucho más cercana a la experiencia del usuario. Tienen en cuenta cada parte del rendimiento que experimentará un usuario: el rendimiento de la red, pero también el rendimiento de los scripts en la página, así como los scripts de terceros, como complementos de análisis o publicidad (de hecho, nuestras pruebas son tan realistas que usted necesita tomar medidas para no crear datos falsos en Google Analytics).

Si ejecutar una prueba de carga BLU con Element le brinda una visión holística del rendimiento de su aplicación en un momento determinado, ejecutar pruebas con regularidad le permite desarrollar una intuición de si su aplicación se está volviendo más rápida o lenta ... quizás de repente, como en el escenario del widget de registro .

Writing a test

Ahora veamos lo fácil que es comenzar con Flood Element.

Los scripts de elementos están escritos en Mecanografiado o JavaScript moderno. Para obtener la mejor experiencia, recomendamos usar la notable combinación de TypeScript editado con VS Code porque le brinda mucha ayuda útil para desarrollar sus pruebas.

Puede instalar Element usando las instrucciones de inicio aquí: https://element.flood.io/

Una vez instalado, edite y pruebe su script localmente, y cuando esté listo para cargarlo en flood.io para realizar una prueba de carga a gran escala registrándose para una prueba aquí: https://flood.io/load-performance-testing-tool/free-load-testing-trial/

Una prueba básica de Element BLU para el escenario de registro anterior podría verse así

inundación-elemento-blu

Si está familiarizado con las pruebas a nivel de protocolo, sabrá que todos los tiempos se organizan en torno a transacciones de solicitud y respuesta. Al aprender a probar en el nivel del navegador, hay algunas sutilezas adicionales que debe tener en cuenta al perfeccionar sus pruebas. En particular, no hay agrupaciones de temporización integradas reales, por lo que debemos introducir las nuestras en la estructura de nuestra prueba.

El enfoque más sencillo para agrupar los tiempos es esperar a que aparezcan los elementos necesarios en la página, tal como lo haría un usuario.

Desde el escenario anterior, estamos interesados ​​en cronometrar la experiencia del usuario al registrarse, pero no tanto la carga de la página. Entonces, en el primer paso, visitamos la URL y esperamos a que la página alcance un estado conocido, hasta que se muestre el título.

inundación-navegador asíncrono

A continuación, actuamos en lo que nos interesa vigilar, es decir, rellenar y enviar el registro.

acción de inundación

Ahora es el momento de guardar el script localmente, para que podamos subirlo a Flood y ejecutarlo con cientos o incluso miles de usuarios simultáneos.

inundación-registro-e1542466930327

  • Crear un proyecto

proyecto de inundación

  • Haga clic en la opción "crear inundación" en su nuevo proyecto

inundación-crear-proyecto-e1542468717797

  • Cree su prueba con la opción Flood Element

opción de elemento de inundación

  • Nombra tu prueba

nombre de prueba de inundación

  • Sube el script .ts que has creado:

inundación-subir-scripts

  • Establezca el número de navegadores (usuarios) y el número de regiones para obtener el número total de usuarios (número de navegadores * número de regiones). Además, no olvide establecer la duración de la prueba:

inundación-configurar-carga

  • Inicie su prueba y espere a que lleguen los resultados:

inundación-lanzamiento-prueba-e1542468800174

  • Una vez que tenga los resultados, vea su gráfico y salte a las áreas problemáticas que puedan resaltar:

resultado de la prueba de inundación

Conclusión

Ahora ya sabe por qué (y cómo) cómo realizar la prueba con usuarios de nivel de navegador utilizando Flood Element. Con este nuevo enfoque, hemos eliminado gran parte del dolor de crear pruebas de carga y también hemos hecho que los resultados sean más realistas al mismo tiempo.

Puede parecer abrumador realizar pruebas con miles de usuarios, pero es fácil realizar cada pieza paso a paso:

  1. Descargar elemento
  2. Escriba una prueba simple localmente, que cubra su escenario clave (es decir, pago)
  3. Ejecute la prueba localmente con 'element run' para asegurarse de que la prueba se ejecute por completo
  4. Suba su prueba a Flood y ejecútela con un 5-10% de su carga máxima (es decir, si su carga máxima es de 5,000 usuarios, comience con 250-500 usuarios)
  5. Evalúe los resultados y modifique su script y aplicación según sea necesario
  6. Suba su prueba a Flood y ejecútela con el 50-100% de su carga máxima (es decir, si su carga máxima es de 5,000 usuarios, entonces ejecútela con 2,500-5,000 usuarios)
  7. Aumente la cobertura de su prueba para cubrir los escenarios adicionales necesarios, hasta lograr la cobertura de prueba que desea.

Dependiendo de la complejidad de su escenario de prueba, es posible que pueda comenzar a trabajar con miles de usuarios en menos de un día. Así que no pierdas el tiempo, dirígete a https://element.flood.io para comenzar a experimentar con Flood Element hoy mismo.

Gracias a nuestros patrocinadores
Más lecturas excelentes sobre la gestión de pruebas
Impulse su negocio
Algunas de las herramientas y servicios para ayudar a que su negocio crezca.
  • Invicti utiliza Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en cuestión de horas.
    Prueba Invicti
  • Web scraping, proxy residencial, administrador de proxy, desbloqueador web, rastreador de motores de búsqueda y todo lo que necesita para recopilar datos web.
    Prueba Brightdata
  • Semrush es una solución de marketing digital todo en uno con más de 50 herramientas en SEO, redes sociales y marketing de contenido.
    Prueba Semrush
  • Intruder es un escáner de vulnerabilidades en línea que encuentra debilidades de ciberseguridad en su infraestructura, para evitar costosas filtraciones de datos.
    Intente Intruder