La detección de errores en tiempo de ejecución es un método de verificación de software que analiza una aplicación de software a medida que se ejecuta e informa los defectos que se detectan durante esa ejecución. Se puede aplicar durante la unidad de pruebas , la prueba de componentes , las pruebas de integración , las pruebas del sistema (automatizado / guión o manual), o pruebas de penetración .
La detección de errores en tiempo de ejecución puede identificar defectos que se manifiestan solo en tiempo de ejecución (por ejemplo, sobrescritura de archivos) y concentrarse en las causas fundamentales de la falla de la aplicación, su ejecución lenta o su comportamiento impredecible. Los defectos comúnmente detectados por la detección de errores en tiempo de ejecución incluyen:
- Condiciones de carrera
- Excepciones
- Fugas de recursos
- Pérdidas de memoria
- Vulnerabilidades de ataques de seguridad (por ejemplo, inyección SQL )
- Punteros nulos
- Memoria no inicializada
- El búfer se desborda [1]
Las herramientas de detección de errores en tiempo de ejecución solo pueden detectar errores en el flujo de control ejecutado de la aplicación. [2]
Ver también
Referencias
- ^ Detección de errores en tiempo de ejecución por Parasoft
- ^ DEBE: Un enfoque escalable para la detección de errores en tiempo de ejecución en programas MPI por Tobias Hilbrich, Martin Schulz, Bronis R. de Supinski, Matthias S. Müller, en Tools for High Performance Computing 2009