Pruebas de Software: Tipos, Metodologías y Mejores Prácticas
Enviado por Chuletator online y clasificado en Diseño e Ingeniería
Escrito el en español con un tamaño de 3,34 KB
Línea Base
Es una colección aprobada de versiones de ECS que construyen un sistema. Determina un punto de referencia en el desarrollo del software.
Control de Versiones Distribuido
Los repositorios distribuidos promueven el uso de ramificaciones (branches) en el desarrollo. El usuario guarda versiones concurrentes en el repositorio, que podrá o no combinar si lo desea (Commit before Merge).
Pruebas de Software
Prueba Unitaria
Es una forma de probar el correcto funcionamiento de un módulo de código, antes de integrarlo con el resto del sistema. Verifica el correcto funcionamiento de la clase antes de integrarla con otras clases y módulos del sistema.
Pruebas en General
Es el proceso de ejecutar el software con el objetivo de encontrar defectos. Las pruebas se deben mantener en paralelo al código, respetando el estándar y las buenas prácticas de codificación.
Metodología TDD
La filosofía es escribir la prueba previamente para facilitar el desarrollo. Es más una técnica para diseñar y construir que solo una forma de probar. Permite analizar en profundidad y pensar en el diseño en vez de ir directo a codificar.
Tipos de Pruebas
- Basada en escenarios o usos del sistema: Probar casos que reflejan el uso real del sistema.
- Basada en riesgos: Priorizar el esfuerzo de las pruebas relativo al impacto probable del defecto.
- Basadas en funciones o estados: Probar cada función o estado del sistema, uno a la vez.
- Basada en dominios: Se clasifican las entradas, procesamientos y salidas en clases de equivalencia.
- Exploratorios: Se aprende del sistema en las propias pruebas.
Prueba de Integración
Verifica el funcionamiento resultante de la interacción de un conjunto de componentes integrados. Generalmente implica una estrategia de integración.
Prueba de Sistema
Se preocupa de verificar y/o validar el funcionamiento de todo el sistema, comparándolo con los requerimientos funcionales y no funcionales.
Prueba de Aceptación
Es una prueba del sistema que tiene como objetivo validarlo por parte del usuario.
Resguardos
Son objetos simulados que imitan el comportamiento de objetos reales de forma controlada.
Prueba de Regresión
Se orienta a verificar que no se han introducido defectos cuando se modifica el software. Consiste en volver a ejecutar un subconjunto de pruebas para asegurar que los cambios no han propagado efectos colaterales no deseados.
Técnicas de Prueba
Caja Blanca
Se analiza la estructura lógica interna de la aplicación.
Prueba de Camino Básico (McCabe)
Busca definir un conjunto básico de caminos de ejecución, basándose en una métrica y utilizando una notación de grafos para llegar a la misma. Artistas - Nodos +2
Caja Negra
Los casos de prueba se derivan de la especificación del módulo o programa, cuyo comportamiento se determina en función de sus entradas y salidas.
Partición Equivalente
Un conjunto de pruebas forma una clase de equivalencias si todos los casos prueban lo mismo, es decir que si uno encuentra un defecto, el otro también. Y si uno no encuentra un defecto, el otro tampoco.