La prueba estática es un tipo de método de prueba de software que se realiza para verificar los defectos en el software sin ejecutar realmente el código de la aplicación de software. Mientras que en las comprobaciones de pruebas dinámicas, el código se ejecuta para detectar los defectos.
Las pruebas estáticas se realizan en las primeras etapas de desarrollo para evitar errores, ya que es más fácil encontrar fuentes de fallas y se pueden solucionar fácilmente. Los errores que no se pueden encontrar con las pruebas dinámicas se pueden encontrar fácilmente con las pruebas estáticas.
Técnicas de Pruebas Estáticas:
Existen principalmente dos tipos de técnicas utilizadas en las Pruebas Estáticas:
1. Revisión:
En las pruebas estáticas la revisión es un proceso o técnica que se realiza para encontrar los posibles defectos en el diseño del software. Es un proceso para detectar y eliminar errores y defectos en los diferentes documentos de respaldo, como las especificaciones de requisitos de software. Las personas examinan los documentos y solucionan errores, redundancias y ambigüedades.
La revisión es de cuatro tipos:
- Informal:
en la revisión informal, el creador de los documentos pone el contenido frente a la audiencia y todos dan su opinión y, por lo tanto, los defectos se identifican en la etapa inicial. - Tutorial:
básicamente lo realiza una persona con experiencia o un experto para verificar los defectos para que no haya más problemas en la fase de desarrollo o prueba. - Revisión por pares:
la revisión por pares significa verificar los documentos entre sí para detectar y corregir los defectos. Básicamente se hace en un equipo de colegas. - Inspección:
la inspección es básicamente la verificación del documento de la autoridad superior, como la verificación de las especificaciones de requisitos de software (SRS).
2. Análisis estático:
el análisis estático incluye la evaluación de la calidad del código escrito por los desarrolladores. Se utilizan diferentes herramientas para hacer el análisis del código y la comparación del mismo con el estándar.
También ayuda en la siguiente identificación de los siguientes defectos:
(a) Unused variables (b) Dead code (c) Infinite loops (d) Variable with undefined value (e) Wrong syntax
El análisis estático es de tres tipos:
- Flujo de datos:
el flujo de datos está relacionado con el procesamiento de flujo. - Flujo de control:
el flujo de control es básicamente cómo se ejecutan las declaraciones o instrucciones. - Complejidad ciclomática: La
complejidad ciclomática es la medida de la complejidad del programa que está básicamente relacionada con el número de rutas independientes en el gráfico de flujo de control del programa.