¿Cuáles son las herramientas de prueba de rendimiento? ¿Cuál es el principio? ¿Cómo elegir la herramienta adecuada?

Prefacio

Este artículo resume principalmente brevemente los principios de las herramientas de prueba de rendimiento y cómo seleccionarlas. Las pruebas de rendimiento son diferentes de las pruebas funcionales. La ejecución de las pruebas de rendimiento es la repetición y concurrencia de funciones básicas. Es necesario simular múltiples usuarios. Los parámetros del indicador deben monitorearse cuando se ejecuta la prueba de rendimiento. Al mismo tiempo, los resultados de Las pruebas de rendimiento no son tan obvias y es necesario analizar los datos. Estas características determinan que las pruebas de rendimiento sean más adecuadas para completarse a través de herramientas.

1. Una breve discusión sobre por qué se necesitan herramientas

Veamos la definición de herramienta: originalmente se refiere a un aparato necesario para el trabajo, y luego se extendió a un medio para lograr, completar o promover algo. (---Explicación de Baidu)

1. Desde la perspectiva de la evolución humana, poder fabricar y utilizar herramientas es la diferencia más fundamental entre humanos y simios, porque las herramientas pueden ayudarnos a mejorar la productividad y la eficiencia.

2. ¿Imagínese qué pasaría si no utilizara herramientas para realizar pruebas de rendimiento?

Podemos analizarlo desde la perspectiva de la definición de pruebas de rendimiento. Las pruebas de rendimiento se refieren a probar varios indicadores de rendimiento del sistema a través de herramientas de prueba automatizadas para simular una variedad de condiciones de carga normales, máximas y anormales. Si no utiliza herramientas, confiar únicamente en las pruebas de rendimiento manuales tendrá las siguientes desventajas:

a) Las pruebas requieren muchos recursos:

  Para simular múltiples cargas y escenarios concurrentes, es necesario que varias personas trabajen juntas. Por lo general, la prueba no tiene muchos recursos, e incluso si hay recursos, el efecto manual se reducirá considerablemente y algunos escenarios pueden incluso ser imposible de completar manualmente.

b) Muy mala repetibilidad:

  Las pruebas de rendimiento a menudo requieren ajustes y ejecuciones de pruebas repetidas. Sin la ayuda de herramientas, es inimaginable depender únicamente del trabajo manual.

c) Mala precisión de la prueba:

  Debido a la necesidad de simular una variedad de escenarios de carga y concurrencia, si se opera manualmente, inevitablemente se producirán errores. En comparación con herramientas o programas, este error será mayor y tendrá un mayor impacto en los resultados de la prueba.

d) Mala recopilación, organización y presentación de resultados:

  Si no hay herramientas, la recopilación manual de datos tendrá mayores errores que las herramientas.

2. La relación entre las pruebas de rendimiento y las herramientas de prueba de rendimiento.

1. Las pruebas de rendimiento se dividen en pruebas del sistema desde la etapa de prueba y no tienen relación directa con las herramientas específicas utilizadas. El uso de herramientas es solo un método y un medio para mejorar la eficiencia y precisión de las pruebas de rendimiento. En esencia, no existe una diferencia sustancial con el uso de herramientas para hacer otras cosas.

2. Las pruebas de rendimiento no son iguales a Loadrunner. LR es solo una de las herramientas de prueba de rendimiento y no es omnipotente. En algunos casos, puede que no sea útil.

3. La diferencia entre herramientas de prueba automatizadas y herramientas de prueba de rendimiento: las herramientas de prueba de rendimiento generalmente se basan en protocolos de comunicación (convenciones seguidas por clientes y servidores para intercambiar información), no se preocupan por la interfaz de usuario del sistema, mientras que la automatización utiliza el reconocimiento de objetos. tecnología., preste atención a la interfaz UI. Es imposible o difícil crear carga con la automatización, pero es fácil con los protocolos.

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036

3. Referencia para seleccionar herramientas de prueba de rendimiento:

Generalmente en una empresa o proyecto, cuando elegimos alguna herramienta, investigamos un poco, el propósito es elegir la herramienta que sea adecuada para la empresa o proyecto. Las herramientas de prueba de rendimiento no son una excepción y, por lo general, pueden considerarse desde los siguientes aspectos:

1. Costo:

  a) Costo de la herramienta: las herramientas generalmente se dividen en dos tipos: fuente comercial cerrada (shou) (fei) y fuente no comercial abierta (mian) (fei). Las herramientas comerciales generalmente tienen funciones más potentes y son de pago. Debido a la tarifa , se puede proporcionar servicio postventa. Si algo sale mal, los profesionales lo ayudarán. Las herramientas de código abierto suelen ser gratuitas y tienen funciones limitadas, y la organización que mantiene las herramientas también es voluntaria, por lo que si encuentra problemas debe resolverlos usted mismo, no hay una persona dedicada a brindar servicios. La elección específica de herramientas comerciales o de código abierto debe considerarse en función de la situación de la empresa, como el tamaño de la empresa, el costo que está dispuesta a asumir y la situación general del proyecto. En términos generales, las grandes empresas suelen poder afrontar el coste de las herramientas y considerarán comprar herramientas comerciales. Las pequeñas empresas pueden optar por herramientas de código abierto debido a la presión financiera.

  b) Costo de aprendizaje: el uso de cualquier herramienta requiere aprendizaje, lo que generará costos de aprendizaje (como tiempo), por lo que también debemos considerar los costos de aprendizaje de los miembros del equipo del proyecto al seleccionar herramientas. Si hay dos herramientas A y B que pueden satisfacer las necesidades de prueba del equipo del proyecto, si la mayoría de las personas usa la herramienta A y solo un número muy pequeño de personas usa la herramienta B, entonces se recomienda que la herramienta A sea prioridad dada. Por lo general, es mejor que los evaluadores estén familiarizados con una herramienta comercial (de rendimiento) de proceso, una herramienta (de rendimiento) gratuita de código abierto y también deben estar familiarizados con los lenguajes de desarrollo de scripts (de rendimiento) comunes, etc. Este es un requisito básico. .

2. Protocolos admitidos:

  Las pruebas de rendimiento suelen estar muy relacionadas con el protocolo: por ejemplo, el sistema B/S suele utilizar el protocolo http para intercambiar información entre el cliente y el proveedor del servidor, y el sistema C/S suele utilizar el protocolo socket para intercambiar información. Al elegir una herramienta, debe considerar el protocolo que utiliza su proyecto. Si una herramienta de prueba puede satisfacer las necesidades de prueba y lograr resultados satisfactorios es la cuestión más básica a considerar al elegir una herramienta de prueba.

3. Vitalidad:

  Hoy en día existen muchas herramientas de prueba de rendimiento, como LR y jmeter, que son herramientas más populares y hay mucha información relevante en Internet, pero algunas herramientas de nicho pueden tener menos información en Internet. Si encuentra un problema relativamente técnico durante el uso de la herramienta, cuando solicite soluciones o ayuda, las herramientas públicas serán relativamente más ventajosas. Después de todo, cuanta más gente las use, más información habrá, por lo que puede probarlas usted mismo. El problema que encontró puede haber sido encontrado y resuelto por otros antes. Incluso si nadie lo ha encontrado antes, debido a que hay muchas personas que lo usan e investigan, creo que siempre habrá expertos que pueden ayudar a resolverlo a través de la ayuda. de la comunidad o foro.

4. Multiplataforma:

  No hace falta decir que este punto es evidente, solo mire por qué JAVA siempre ha sido tan popular.

portada animada

4. Herramientas comunes de prueba de rendimiento:

Herramientas de prueba de rendimiento, en teoría, todas las herramientas utilizadas en el proceso de prueba de rendimiento pueden denominarse herramientas de prueba de rendimiento y generalmente se dividen en las siguientes categorías:

ilustrar:

  • Herramientas de prueba de rendimiento del lado del servidor: necesitan soportar la generación de estrés y carga, registrar y generar scripts, configurar e implementar escenarios, generar usuarios concurrentes y ejercer presión continua sobre el sistema.
  • Herramienta de prueba de rendimiento de front-end web: debe prestar atención al proceso de procesamiento de las herramientas del cliente, como los navegadores, en las páginas específicas que deben mostrarse.
  • Herramientas de prueba de rendimiento de terminales móviles: al igual que las herramientas de prueba de rendimiento de terminales web, también deben preocuparse por el proceso de procesamiento de la página y funciones específicas de recopilación de datos, como: registro de la CPU del teléfono móvil, memoria, energía y arranque. tiempo y otros datos.
  • Herramienta de monitoreo de recursos: principalmente puede recopilar datos durante el proceso de prueba de rendimiento y proporcionar una buena manera de mostrar los resultados.

5. Características de las herramientas comunes de prueba de rendimiento.

  • JMeter: Utiliza un modelo multiproceso y es altamente escalable, pero la presión de fabricación no es tan alta. Es muy adecuado para presionar algunos servicios Tomcat o algunas interfaces de back-end. La desventaja de JMeter es que el valor de presión no se puede controlar con precisión y es difícil de adaptar a situaciones de alta concurrencia, además, debido a que está escrito en JAVA, consume recursos.
  • LoadRunner: más parecido a un simulador, es más adecuado para la construcción front-end de escenarios más complejos, como la simulación de escenarios de inicio de sesión de 100 usuarios. LoadRunner proporciona un buen soporte para personal no técnico. LoadRunner no funciona con interfaces de backend.

La siguiente tabla es una tabla de comparación entre JMeter y LoadRunner:

describir JMetro Corredor de carga
Principios de arquitectura A través del agente intermedio, supervise y recopile instrucciones de clientes concurrentes, genere scripts a partir de ellos, envíelos al servidor de aplicaciones y luego supervise el proceso de retroalimentación del servidor de aplicaciones. Mismo JMetro
Instalar Simple, solo descomprime, más flexible El paquete de instalación de LoadRunner es relativamente grande, la instalación es problemática y la herramienta en sí es relativamente voluminosa.
Protocolos soportados Admite múltiples protocolos: HTTP, HTTPS, SOAP, FTP, base de datos a través de JDBC, JMS, etc., pero no es lo suficientemente completo en comparación con LR, por esta razón, jemter es relativamente más flexible y liviano. Admite muchos protocolos y es relativamente completo, pero debido a esto la herramienta en sí parece ser voluminosa y no lo suficientemente flexible.
Grabación de guión Proporciona una función para utilizar ProxyServer (servidor proxy) local para grabar y generar scripts de prueba, y también admite la grabación de badboy y luego la generación de scripts JMeter. La función de grabación incorporada es potente y se puede grabar y reproducir directamente.
Modelo de concurrencia Aumente los usuarios simultáneos aumentando la cantidad de grupos de subprocesos o configurando la cantidad de bucles Admite múltiples modelos de concurrencia seleccionando qué tipo de escenario desea configurar en el escenario y luego seleccionando la cantidad de usuarios virtuales
Pruebas distribuidas Soporte, se pueden configurar múltiples agentes para lograr presión simultánea en múltiples máquinas a través del control remoto Mismo JMetro
Monitoreo de recursos Implementado a través del complemento JMeterPlugins y ServerAgent Viene con función de monitoreo de recursos
Análisis de informes Genere informes HTML integrándolos con Ant Admite la generación de informes HTML y Word
IP virtual no apoyo apoyo
simulación de velocidad de internet no apoyo apoyo
Escalabilidad Código abierto, el código fuente se puede modificar según las necesidades. Implementado a través de una biblioteca de funciones extendida
costo de aprendizaje Principalmente información de autoaprendizaje del sitio web oficial. Hay muchos materiales en línea y capacitación relacionada. Si compra la versión original, también hay soporte técnico.

Finalmente, me gustaría agradecer a todos los que leyeron atentamente mi artículo. Mirando el aumento de fans y atención, siempre hay algo de cortesía. Aunque no es algo muy valioso, si puedes usarlo, ¡puedes llevarlo directamente!

Documento de entrevista de prueba de software

Debemos estudiar para encontrar un trabajo bien remunerado. Las siguientes preguntas de la entrevista provienen de los últimos materiales de entrevista de empresas de Internet de primer nivel como Alibaba, Tencent, Byte, etc., y algunos jefes de Byte han dado respuestas autorizadas. Después de terminar esto set Creo que todos pueden encontrar un trabajo satisfactorio según la información de la entrevista.
 

Insertar descripción de la imagen aquí

 

Supongo que te gusta

Origin blog.csdn.net/IT_LanTian/article/details/132890693
Recomendado
Clasificación