¿Cómo obtuvo "él" la oferta? La colección más completa de preguntas y respuestas de entrevistas para pruebas de desempeño en Internet (colección súper completa)


Prefacio

1. ¿Qué son las pruebas de carga? ¿Qué son las pruebas de rendimiento?

La prueba de carga es un tipo de prueba de rendimiento que se refiere a si el programa puede soportar los datos que se ejecutan en un entorno de sobrecarga. En esta prueba, el objeto de prueba soportará diferentes cargas de trabajo para evaluar y evaluar el rendimiento del objeto de prueba bajo diferentes condiciones de carga de trabajo, comportamiento de desempeño y la capacidad de continuar operando adecuadamente.

El objetivo de las pruebas de carga es determinar y garantizar que el sistema funcionará correctamente más allá de la carga de trabajo máxima esperada. Además, las pruebas de carga evalúan características de rendimiento como el tiempo de respuesta, la tasa de procesamiento de transacciones y otros aspectos relacionados con el tiempo.

Las pruebas de rendimiento utilizan principalmente escenarios para probar si el rendimiento del sistema de software cumple con los requisitos de rendimiento de producción, incluidas pruebas de carga, pruebas de resistencia, pruebas de capacidad de la base de datos, pruebas comparativas y pruebas de competencia (concurrencia, usuario).

2. ¿Qué pruebas incluyen las pruebas de rendimiento? (Nombra al menos tres tipos)

Pruebas de carga, pruebas de estrés, pruebas de estabilidad, pruebas de referencia

3. Describa brevemente los pasos de las pruebas de rendimiento.

Paso 1: Análisis de requisitos, plan de pruebas, diseño de casos de prueba
Paso 2: Diseño y desarrollo de pruebas (grabación y depuración de scripts de prueba, diseño de escenarios de prueba)
Paso 3: Ejecución de pruebas (configuración del entorno de pruebas, implementación de escenarios, ejecución de escenarios, monitoreo de escenarios)
Parte 4: Análisis de resultados de pruebas, ubicación de problemas de rendimiento, evaluación de informes de pruebas

4. ¿Cuándo se puede empezar a realizar pruebas de rendimiento?

Si se pasa la prueba funcional, los sistemas que generalmente requieren pruebas de rendimiento son módulos funcionales con una gran cantidad de usuarios, uso comercial frecuente y funciones importantes.

5. ¿Cuál es la relación entre el tiempo de respuesta y el rendimiento?

Cuando el rendimiento del sistema no alcanza el límite de procesamiento del sistema, el rendimiento del sistema no disminuirá y el tiempo promedio de respuesta de las transacciones generalmente no aumentará.

Cuando el sistema alcanza el límite de rendimiento, las transacciones del cliente se pondrán en cola y esperarán en la cola de solicitudes, y el tiempo de espera se registrará en el tiempo de respuesta, por lo que el tiempo promedio de respuesta de las transacciones generalmente aumentará.

6. ¿Cuáles son los campos de aplicación de las pruebas de rendimiento del software?

Verificación de capacidad: ¿Puede un sistema tener la capacidad B bajo la condición A?
Planificación de capacidad: ¿Cómo hacer que el sistema tenga las capacidades de rendimiento que requerimos o qué capacidades de rendimiento tiene el sistema bajo ciertas condiciones posibles?
Ajuste del rendimiento, descubrimiento de defectos.

7. En cuanto al tiempo de respuesta del sistema web, ¿cuántos segundos son aceptables para los usuarios ampliamente reconocidos en la industria?

2/5/10S

8. En las pruebas de desempeño, ¿a qué indicadores de desempeño generalmente se debe prestar atención?

Tiempo de respuesta, simultaneidad, rendimiento, contadores de rendimiento del sistema, tiempo de reflexión.

9. Describa qué es el rendimiento.

El número de solicitudes de usuarios procesadas por el sistema por unidad de tiempo.
Desde una perspectiva empresarial, el rendimiento se puede medir en unidades como la cantidad de solicitudes/segundo, la cantidad de servicios/segundo, la cantidad de personas/día o la cantidad de servicios procesados/hora.

Desde la perspectiva de la red, el rendimiento se puede medir en bytes/segundo
. Para aplicaciones interactivas, el indicador de rendimiento refleja la presión sobre el servidor, lo que puede ilustrar la capacidad de carga del sistema.

10. ¿Qué significa TPS?

Número de transacciones procesadas por unidad de tiempo

11. Dé un ejemplo de concurrencia generalizada y concurrencia estricta.

Concurrencia generalizada: la concurrencia generalizada en realidad se refiere a la existencia de usuarios virtuales que realizan transacciones dentro de un período de tiempo.
En el sistema de metro, cada vez hay gente nueva que llega y sale, y todos hacen básicamente lo mismo.

Tomar el metro. Supongamos que hay 10.000 personas en la sala del metro en un momento determinado, 100 personas esperando en la taquilla y
2.000 personas en el metro que acaba de salir. En este momento, para el sistema (tren) bajo investigación, el número concurrente Hay 2.000 personas, si la inspección es el área de facturación de billetes, el número de pasajeros simultáneos es 100.

De manera similar, si el sistema bajo investigación es una sala de metro, entonces la concurrencia en este momento es de 10,000 personas. Este tipo de concurrencia generalmente se denomina "concurrencia generalizada".

Concurrencia estricta: se refiere a una gran cantidad de usuarios que realizan exactamente las mismas operaciones funcionales o el mismo tipo de operaciones funcionales en el sistema de software al mismo tiempo. Por ejemplo, productos de venta flash en Double Eleven

12. Para un sistema web, ¿qué indicadores de desempeño preocupan más a los usuarios?

Tiempo de respuesta

13. ¿Qué suele contener un plan de pruebas de rendimiento?

Propósito de la prueba, objetivos de calidad de la prueba, entorno de prueba, fase y alcance de la prueba, estrategia de prueba, cronograma de prueba, casos de prueba

14. ¿Cómo identificar los cuellos de botella en el desempeño?

Descubra dónde ocurrió el problema por primera vez, es decir, la deficiencia, y luego analícela.
Primero, haga un informe de prueba de rendimiento del sistema existente, como el consumo de CPU, el consumo de memoria, la E/S del disco, la E/S de la tarjeta de red, el ancho de banda, el intercambio de páginas, etc.

Si se descubre que uno o más de ellos han alcanzado el cuello de botella, entonces es necesario considerar si el hardware es insuficiente y el rendimiento no puede mejorar, o si la implementación del sistema no es razonable y el sistema está lleno.

Si se trata de un problema de hardware, considere ampliar la capacidad lo antes posible.

Si los recursos no han alcanzado su límite o se confirma que hay un problema con la implementación del sistema, entonces es necesario desmantelar las funciones correspondientes del sistema o monitorear el consumo de tiempo a nivel de función.

15. Durante las pruebas de rendimiento, ¿qué recursos del sistema operativo deben monitorearse?

CPU, memoria, disco, red.

16. Por favor explique qué es la competencia por recursos.

Varios usuarios usan lo mismo, pero una persona lo bloquea, lo que genera competencia por recursos y
bloqueo de competencia.

17. El tiempo de respuesta del sistema de verificación es inferior a 3 segundos por debajo de 100 TPS. Para tales requisitos, ¿qué método de prueba de rendimiento se debe utilizar?

Evaluación de capacidad

18. Desde la perspectiva de un administrador, ¿qué indicadores del rendimiento del sistema nos preocupan principalmente?

① El tiempo de respuesta del sistema;
② Información relacionada con el estado del sistema, como: CPU, memoria, estado del servidor de aplicaciones, memoria disponible de JVM, estado de la base de datos, etc.; ③ La escalabilidad del sistema, la capacidad de manejar la
concurrencia;
④ La capacidad máxima posible del sistema, posibles cuellos de botella en el rendimiento, qué equipos se pueden reemplazar o qué ampliaciones se pueden realizar para mejorar el rendimiento del sistema; ⑤
Si la operación a largo plazo es lo suficientemente estable, si puede proporcionar servicios comerciales ininterrumpidos, etc.;

19. Desde la perspectiva de un ingeniero de desarrollo, ¿qué indicadores del rendimiento del sistema nos preocupan principalmente?

Arquitectura del sistema: si el diseño de la arquitectura es razonable;
diseño de la base de datos: si hay problemas en el diseño de la base de datos;
código: si hay problemas de rendimiento en el código, si hay métodos de uso de memoria irrazonables en el sistema;
diseño y código: si hay Hay subprocesos irrazonables en el modo de sincronización del sistema, si hay competencia de recursos irrazonable en el sistema.

20. Describa la diferencia entre pruebas de estrés y pruebas de carga.

El resultado esperado de la prueba de estrés es que ocurran problemas en el sistema, y ​​lo que examinamos es la capacidad del sistema para manejar problemas.
La prueba de carga consiste en examinar el rendimiento de un sistema de software bajo una carga determinada.
Las pruebas de estrés nos permiten identificar las debilidades de un sistema y cómo se desempeñará un programa bajo una carga extrema.

21Para un proyecto que carece de requisitos de desempeño claros, ¿cómo se extraen los requisitos de desempeño?

Comunicarse con los clientes, consultar registros históricos, comparar con productos similares, según experiencias pasadas

22. ¿Qué debe contener un caso de prueba de rendimiento completo?

Número de caso de prueba, título del proyecto, título de la prueba, nivel de importancia, condiciones preestablecidas, entrada, pasos de operación, salida, resultados de la prueba, probador y tiempo

23. ¿Cuáles son los pasos de las pruebas de rendimiento y cuál es la parte más difícil de las pruebas de rendimiento?

Pasos de las pruebas de rendimiento:
trabajo de preparación, incluida la verificación de las funciones básicas del sistema, formación del equipo de pruebas, selección de herramientas y análisis previo de escenarios comerciales.

Plan de prueba.
Diseño y desarrollo de guiones de prueba.
Ejecución y gestión de pruebas.
análisis de prueba.

La parte más difícil de las pruebas de rendimiento:
es difícil para las pruebas de rendimiento simular cargas reales. En muchos casos, las pruebas de rendimiento solo se pueden utilizar como referencia para encontrar problemas de rendimiento obvios. Si desea lograr una precisión del 100%, aún necesita monitoreo en línea en tiempo real.

24. ¿Cómo realizar pruebas de rendimiento y cómo comprobar su rendimiento?

Análisis de requisitos de rendimiento: aclare si las pruebas de rendimiento son necesarias, aclare las características del sistema bajo prueba, el negocio básico, el negocio clave, el comportamiento del usuario, el alcance de las pruebas de rendimiento, los objetivos e indicadores de las pruebas de rendimiento y la estrategia de pruebas de rendimiento.

Llevar a cabo el diseño de casos de prueba, el desarrollo y depuración de scripts de prueba, el entorno de prueba y la preparación de datos de prueba.

Utilice la herramienta jmeter para realizar pruebas de rendimiento.

Obtenga datos de prueba, optimice el sistema y complete el informe de prueba.
Si utiliza la herramienta de prueba jmeter, puede utilizar el informe de agregación para ver su rendimiento. Compare los datos de la prueba de rendimiento con los indicadores de rendimiento de la prueba. Si se alcanzan los indicadores de rendimiento, significa que el rendimiento es bueno.

El siguiente es el diagrama del sistema de arquitectura de conocimiento de aprendizaje de ingenieros de pruebas de software más completo que compilé en 2023.

1. Programación en Python desde el nivel básico hasta el dominio

Por favor agregue la descripción de la imagen.

2. Implementación práctica de proyectos de automatización de interfaces.

Por favor agregue la descripción de la imagen.

3. Combate real del proyecto de automatización web.

Por favor agregue la descripción de la imagen.

4. Implementación práctica del proyecto de automatización de aplicaciones.

Por favor agregue la descripción de la imagen.

5. Currículums de los fabricantes de primer nivel.

Por favor agregue la descripción de la imagen.

6. Probar y desarrollar el sistema DevOps

Por favor agregue la descripción de la imagen.

7. Herramientas de prueba automatizadas de uso común

Por favor agregue la descripción de la imagen.

8. Prueba de rendimiento de JMeter

Por favor agregue la descripción de la imagen.

9. Resumen (pequeña sorpresa al final)

No importa cuán confuso sea el camino que tienes por delante, el sueño en tu corazón siempre será la luz que te guiará. Enfrentar los desafíos con valentía y persistir en el trabajo duro, cada esfuerzo es un tesoro para el crecimiento. Cree en tus propias habilidades y persigue tu pasión. Sólo puedes seguir persiguiendo y creando tu propio viaje glorioso.

Trabajar duro es la única manera de hacer realidad tus sueños, agudizar tu voluntad, superarte a ti mismo y avanzar con valentía. No importa cuántos reveses y dificultades encuentres, persiste en tu fe, persigue con valentía y da un paso a la vez, eventualmente llegarás a la cima y compondrás tu propio y magnífico poema.

En el escenario de la vida, la lucha continua es la clave de nuestro crecimiento y progreso. Independientemente de los desafíos y dificultades que encontremos, debemos persistir en creer en nuestro propio potencial y valor, afrontarlos con valentía y avanzar con firmeza. Sólo así podremos encender la esperanza en nuestros corazones y crear nuestra propia gloria.

Supongo que te gusta

Origin blog.csdn.net/m0_60054525/article/details/132168174
Recomendado
Clasificación