¿Qué es la prueba de volumen? Aprende con ejemplos

⚡ Resumen inteligente

Las pruebas de volumen someten una aplicación a una gran cantidad de datos para observar cómo se comportan el almacenamiento, las consultas y los tiempos de respuesta a medida que crece la base de datos. También se conocen como pruebas de inundación y, en este caso, se escala la cantidad de datos en lugar del número de usuarios.

  • 💾 Definición básica: El volumen de datos aumenta mientras que la carga de usuarios se mantiene normal.
  • 🔍 Controles primarios: Pérdida de datos, sobrescritura silenciosa, precisión del almacenamiento y tiempo de respuesta con un conjunto de datos grande.
  • 📈 Punto de degradación: La prueba determina el volumen a partir del cual la estabilidad y el rendimiento comienzan a disminuir.
  • 🇧🇷 No es una prueba de carga: El volumen influye en el tamaño de las filas y los archivos; la carga influye en el número de usuarios concurrentes. Ambos métodos detectan defectos diferentes.
  • 🧪 Realismo de datos: Los datos generados deben respetar las claves y la integridad relacional, que es la parte más difícil de la prueba.
  • 💰 Caso de negocio: Los límites de capacidad detectados antes del lanzamiento cuestan una fracción de lo que cuestan los mismos límites durante la producción.

¿Qué son las pruebas de volumen?

¿Qué es la prueba de volumen?

Pruebas de volumen es un tipo de Prueba de Software, donde el software se somete a un gran volumen de datos. También se le conoce como pruebas de inundación. Las pruebas de volumen se realizan para analizar el rendimiento del sistema aumentando el volumen de datos en la base de datos.

Con la ayuda de las pruebas de volumen, se puede estudiar el impacto en el tiempo de respuesta y el comportamiento del sistema cuando se expone a un gran volumen de datos.

Por ejemplo, un servicio de transmisión de música podría probarse con un catálogo de 50 millones de canciones. tracks y una tabla de historial de escucha con miles de millones de filas, para ver si las consultas de búsqueda y recomendación aún se responden en un tiempo aceptable.

Nótese la distinción: Las pruebas de volumen aumentan el la cantidad de datos El sistema se mantiene. Aumentar el número de usuarios simultáneos Se trata de una prueba de carga, que es una prueba diferente con un objetivo diferente.

Beneficios de las pruebas de volumen

  • Identificar los problemas de capacidad con anticipación evita el costo mucho mayor de solucionarlos durante la producción.
  • Ayuda a un inicio más rápido de los planes de escalabilidad.
  • Identificación temprana de obstáculos
  • Garantiza que su sistema ahora sea capaz de usarse en el mundo real

¿Por qué realizar pruebas de volumen?

El objetivo de realizar la prueba de volumen es

  • Verifique el rendimiento del sistema con volúmenes crecientes de datos en la base de datos.
  • Identificar los problemas que probablemente surjan una vez que el conjunto de datos sea grande.
  • Determinar el punto en el que se degrada la estabilidad del sistema.
  • La prueba de volumen ayudará a identificar la capacidad del sistema o aplicación: volumen normal y pesado.

Cómo realizar pruebas de volumen

En las pruebas de volumen, es necesario probar lo siguiente:

  • Pruebe para comprobar si hay alguna pérdida de datos.
  • Verifique el tiempo de respuesta del sistema
  • Compruebe si los datos se almacenan correctamente o no
  • Verifique si los datos se sobrescriben sin ninguna notificación
  • Compruebe que las advertencias y los mensajes de error aparecen realmente cuando se alcanza un límite de volumen.
  • Compruebe si un gran volumen de datos afecta la velocidad de procesamiento
  • Confirme que el sistema dispone de los recursos de memoria y almacenamiento que requiere el volumen.
  • Confirme que la prueba de volumen abarca todo el sistema y no solo un componente.
  • ¿Existe algún riesgo si el volumen de datos es mayor que el especificado?
  • Determinar si existe alguna garantía de que el volumen de datos no superará el máximo especificado.

Mejores prácticas para pruebas de alto volumen

Varias de las prácticas que se describen a continuación son comunes a las pruebas de carga, ya que ambas suelen ejecutarse en el mismo entorno. Las prácticas específicas para cada volumen se refieren al conjunto de datos en sí:

  • Detenga todos los servidores y verifique todos los registros
  • Antes de la prueba de carga, ejecute manualmente el escenario de la aplicación.
  • Para obtener resultados más útiles, escalone el número de usuarios.
  • Para superar las limitaciones de las licencias, equilibre el tiempo de reflexión
  • Tenga cuidado con la nueva construcción.
  • Analizar el caso de uso para mejorar una vez que se haya establecido una línea de base.
  • La repetición de determinadas partes de las pruebas de volumen se vuelve inevitable en caso de que exista un cuello de botella en el rendimiento.

Pruebas de volumen frente a pruebas de carga

Pruebas de volumen Prueba de carga
  • Las pruebas de volumen comprueban cómo se comporta una aplicación cuando la base de datos contiene una cantidad muy grande de datos.
  • Durante las pruebas de carga, la aplicación se somete a cierto nivel de carga para analizar el comportamiento de la aplicación.
  • Las pruebas de volumen verifican que el sistema siga respondiendo correctamente con un volumen de datos determinado. Normalmente, aumentan el tamaño de los archivos y las tablas.
  • Las pruebas de carga verifican el rendimiento a medida que aumenta la carga de usuarios concurrentes. Normalmente, aumentan el número de solicitudes simultáneas.

Desafíos en las pruebas de volumen

  • Fragmentación de la memoria difícil de generar.
  • Generación dinámica de claves.
  • Relacional Integrity de datos generados

Comparación de esta prueba con otras pruebas de rendimiento

Las pruebas de rendimiento son un conjunto de pruebas que se diferencian en la forma de la carga aplicada, razón por la cual se confunden con tanta facilidad.

Tipo de prueba ¿Qué se incrementa? Pregunta que responde
Prueba de carga Usuarios simultáneos, hasta el pico previsto ¿Cumple los objetivos en condiciones normales de tráfico máximo?
Pruebas de volumen Datos almacenados en la base de datos ¿Es capaz de gestionar el crecimiento del conjunto de datos?
Prueba de esfuerzo Carga por encima de la capacidad, hasta que falle. ¿Dónde se rompe y cómo?
prueba de picos Carga, instantánea y extremadamente ¿Sobrevive y se recupera de un shock?
Pruebas de resistencia Duración, a carga normal ¿El rendimiento se degrada con el tiempo?
Prueba de remojo Duración, recursos de visualización ¿Existen fugas de memoria o de identificadores?
Prueba de estabilidad Condiciones variables ¿Sigue siendo fiable a medida que cambian las condiciones?

La distinción que más importa aquí: Las pruebas de volumen permiten escalar los datos, las pruebas de carga permiten escalar los usuarios. Un informe que tarda dos segundos en procesar diez mil filas y dos minutos en procesar diez millones de filas tiene un problema de volumen, no de carga, y ninguna cantidad de capacidad adicional del servidor lo solucionará.

Cómo generar datos de prueba para pruebas de volumen

En la sección de desafíos se señala que generar datos realistas es la parte más difícil de las pruebas de volumen. En la práctica se utilizan cuatro enfoques, y cada uno implica una compensación.

Nuevo enfoque Realismo Desventaja principal
Copia de los datos de producción Mayor Exposición a la privacidad y al cumplimiento normativo
Copia de producción enmascarada Alto El enmascaramiento puede romper la integridad referencial.
Generación sintética Media Las distribuciones pueden no coincidir con la realidad.
Tráfico de producción reproducido Alto Requiere infraestructura de captura

Sea cual sea la ruta que elija, deben cumplirse tres propiedades o la prueba no medirá nada útil.

  • Integridad referencial. Cada clave externa debe resolverse. Un millón de filas huérfanas ponen a prueba el motor de almacenamiento, pero nunca las rutas de unión que la aplicación realmente utiliza.
  • Cardinalidad realista. Si la tabla de producción tiene diez millones de filas correspondientes a doscientos clientes, generar diez millones de filas correspondientes a diez millones de clientes produce planes de consulta completamente diferentes.
  • Distribución realista. Los datos reales están sesgados. Los datos aleatorios uniformes ocultan las particiones activas y la contención de índices que provocan incidentes en producción.

Una advertencia práctica sobre la privacidad. La copia de datos de producción a un entorno de prueba es la causa más común de una filtración de datos durante las pruebas. Enmascare los campos personales antes de que la copia salga de producción, no después.

Preguntas Frecuentes

Las pruebas de volumen aumentan la cantidad de datos en el sistema mientras la carga de usuarios se mantiene normal. Las pruebas de carga aumentan los usuarios concurrentes mientras el conjunto de datos se mantiene normal. Ambas revelan diferentes cuellos de botella, por lo que son necesarias.

Empiece por el volumen de datos proyectado al final del horizonte de capacidad planificado, que suele ser de dos a tres años de crecimiento, y luego realice pruebas con esa cifra y con el doble para averiguar dónde comienza la degradación.

Índices faltantes o ineficientes, consultas que escalan de forma no lineal, agotamiento del almacenamiento, truncamiento silencioso de campos y trabajos por lotes cuyo tiempo de ejecución excede el intervalo disponible para ellos.

Los modelos de IA aprenden la distribución estadística y las relaciones de los datos de producción, y luego generan registros sintéticos que conservan esas propiedades sin exponer ningún registro real del cliente.

Sí, hasta cierto punto. Los modelos ajustados a las curvas de degradación medidas extrapolan el punto de fallo, pero la proyección debe confirmarse mediante una prueba real antes de que influya en una decisión sobre la capacidad.

Resumir este post con: