¿Qué es la prueba de simultaneidad?
La prueba de concurrencia se define como una técnica de prueba para detectar los defectos en una aplicación cuando varios usuarios están conectados. En otras palabras, monitorear el efecto mientras varios usuarios realizan la misma acción al mismo tiempo. La siguiente imagen muestra las pruebas simultáneas
Las pruebas concurrentes también se conocen como pruebas multiusuario . Probar un programa concurrente es más desafiante que probar un programa secuencial, debido a problemas de no determinismo y sincronización.
Por que realizar pruebas de simultaneidad
- Identifica los efectos de acceder a los mismos registros de base de datos, módulos o código de aplicación al mismo tiempo.
- Identifica y mide el nivel de interbloqueo, bloqueo y uso de código de un solo subproceso y restricción del acceso a los recursos compartidos.
Ventajas de las pruebas concurrentes
- Reduce relativamente la cantidad de esfuerzo necesario para probar una aplicación al restringir el alcance de las interacciones concurrentes a unos pocos componentes ampliamente utilizados y bien probados.
- El valor de encapsulación permite analizar el comportamiento de una parte de un programa sin revisar todo el código o programa.
- Ayuda a mejorar la confiabilidad y solidez de los programas concurrentes.
Desventajas de las pruebas concurrentes
Desventajas que se pueden encontrar con la prueba al realizar pruebas simultáneas
- Necesita probar en múltiples plataformas
- Requiere pruebas más intensivas
- Las funciones no devuelven su resultado a la persona que llama de inmediato, sino que se pueden entregar más tarde a través de notificaciones, bloqueos, funciones de devolución de llamada o mecanismos similares, lo que dificulta las pruebas.
- La información o el flujo del programa no se refleja en la pila de llamadas.
- La cantidad de rutas de ejecución en el sistema puede ser extremadamente grande, por lo que los procesos en un sistema concurrente pueden interactuar entre sí mientras se ejecutan.
- Los programas concurrentes tienen una mayor proporción de fallas que los secuenciales
- Depuración de programas concurrentes
Resumen:
La técnica de prueba concurrente o concurrente se realiza para detectar los defectos en una aplicación cuando varios usuarios inician sesión.