Filosofía, Proceso y Criterios de Cobertura en la Verificación de Software

Clasificado en Diseño e Ingeniería

Escrito el en español con un tamaño de 3,28 KB

Filosofía de las Pruebas del Software

La naturaleza del software impone ciertas dificultades en su verificación:

  • Las características del software hacen difícil probarlo.
  • La **prueba exhaustiva** es impracticable.
  • Existen prejuicios comunes: no siempre un error es negligencia o falta de profesionalismo.
  • Descubrir errores es el éxito de la prueba.
  • Se trata de una actividad a posteriori, enfocada en la detección de defectos.

Recomendaciones para Efectuar Pruebas

Para garantizar la efectividad del proceso de prueba, se deben seguir las siguientes pautas:

  • Cada caso de prueba debe definir el resultado de salida esperado.
  • El programador debe evitar probar sus propios programas.
  • Se debe inspeccionar a conciencia el resultado de cada prueba.
  • Se deben incluir tanto datos de entrada válidos y esperados como no válidos e inesperados.
  • Se deben evitar los casos desechables.
  • No deben hacerse planes de prueba suponiendo que, prácticamente, no hay defectos.
  • La experiencia parece indicar que donde hay un defecto, hay otros.

El Proceso de Prueba

El proceso de prueba es una actividad estructurada que sigue los siguientes pasos:

  1. Comienza con un plan de pruebas.
  2. A partir de él, se diseñan pruebas específicas basándose en la documentación del software.
  3. Se toma la configuración del software para ejecutar sobre ella los casos de prueba.
  4. A partir de los resultados, se pasa a su evaluación, comparándola con los resultados esperados.
  5. A partir de esta evaluación, se puede depurar el código o analizar la estadística de errores.

Técnicas de Diseño de Casos de Prueba

El diseño de casos de prueba está influenciado por la imposibilidad de probar exhaustivamente el software. Las técnicas de diseño de casos de prueba tienen como objetivo conseguir una confianza aceptable en que se detectarán los defectos existentes sin necesidad de consumir excesivos recursos.

La idea fundamental para el diseño de casos de prueba consiste en elegir algunas de las posibilidades de funcionamiento que, por sus características, se consideren representativas del resto.

Prueba Estructural (Caja Blanca)

El diseño de casos en la prueba estructural debe basarse en la elección de caminos importantes que ofrezcan una seguridad aceptable en descubrir defectos. Para lograr esto, se utilizan los llamados criterios de cobertura lógica.

Clasificación de Cobertura

Los criterios de cobertura lógica se clasifican principalmente en:

Cobertura de Sentencias

Se trata de generar los casos necesarios para que cada instrucción del programa se ejecute al menos una vez.

Cobertura de Decisiones

Consiste en escribir casos suficientes para que cada decisión (o condición lógica) tenga un resultado verdadero y uno falso.

Entradas relacionadas: