Niveles de prueba de software

Niveles de prueba de software
Información sobre la plantilla
Concepto:Conjunto de pruebas que se le aplican al software en diferentes etapas del proceso de desarrollo y que son agrupadas en niveles.

Los niveles de prueba de software. Cuando se le van a aplicar pruebas a un software, se tienen en cuenta una serie de objetivos en diferentes escenarios y niveles de trabajo, debido a que las pruebas son agrupadas por niveles que se encuentran en distintas etapas del proceso de desarrollo.

Niveles de prueba

  • Prueba de unidad
  • Prueba de integración
  • Prueba de sistema
  • Prueba de aceptación

Prueba de unidad

La prueba de unidad es la primera fase de las pruebas dinámicas y se realizan sobre cada módulo del software de manera independiente. El objetivo es comprobar que el módulo, entendido como una unidad funcional, está correctamente codificado.

Se enfocan en un programa o un componente que desempeña una función específica que puede ser probada y que se asegura que funcione tal y como lo define la especificación del programa. Los programadores siempre prueban el código durante el desarrollo, por lo que las pruebas unitarias son realizadas solamente después de que el programador considera que el componente está libre de errores.

Consiste en una prueba estructural enfocada a los elementos más pequeños del software. Esta prueba es aplicable a componentes representados en el modelo de implementación, para verificar que los flujos de control y de datos estén cubiertos y que ellos funcionen como se espera.

Durante la prueba de unidad, la comprobación selectiva de los caminos de ejecución es una tarea esencial. Se deben diseñar casos de prueba para detectar errores debidos a cálculos incorrectos, comparaciones incorrectas o flujos de control inapropiados. Las pruebas del camino básico y de bucles son técnicas muy efectivas para descubrir una gran cantidad de errores en los caminos.

Prueba de integración

Su objetivo es identificar errores introducidos por la combinación de programas o componentes probados unitariamente, para asegurar que la comunicación, enlaces y los datos compartidos ocurran apropiadamente. Se diseñan para descubrir errores o completitud en las especificaciones de las interfaces.

En este nivel se asegura que las interfaces y ligas entre las partes del sistema trabajen apropiadamente. Antes de las pruebas de integración, los componentes tuvieron que haber pasado sus pruebas individuales, por lo que el enfoque ahora es sobre el flujo de control entre los módulos, y sobre los datos que son intercambiados entre ellos de manera independiente.

Prueba de sistema

Esta prueba tiene como objetivo verificar que se han integrado adecuadamente todos los elementos del sistema y que realizan las operaciones apropiadas funcionando como un todo. Es similar a la prueba de integración pero con un alcance mucho más amplio.

Es en esta prueba donde se buscan los defectos globales dados por la mala integración de los módulos y que impiden una buena aceptación en la decisión del cliente. La responsabilidad es de todos los creadores de cada uno de los elementos del sistema.

Prueba de aceptación

Son realizadas principalmente por los usuarios con el apoyo del equipo del proyecto. El propósito es confirmar que el sistema está terminado, que desarrolla puntualmente las necesidades de la organización y que es aceptado por los usuarios finales.

La prueba de aceptación puede tener lugar a lo largo de semanas o meses, descubriendo así errores acumulados que pueden ir degradando el sistema. Es muy recomendable que las pruebas de aceptación se realicen en el entorno en que se va a explotar el sistema incluyendo el personal que lo va a manejar.

En caso de un producto de interés general, se realizan pruebas con varios usuarios que reportarán sus valoraciones sobre el producto.

Fuente

  • http://www.lsi.us.es/docencia/get.php?id=361
  • Ramírez Camejo, Yislen Dolores; Vasallo Artigas, Onaysi.
  • Proceso de Pruebas de Liberación al Sistema de Manejo de Datos de Ensayos Clínicos Cubano *Trabajo de Diploma para optar por el título de Ingeniero en Ciencias Informáticas, Universidad de las Ciencias Informáticas, 2009.