Análisis y Diseño de Pruebas
Es el capítulo de mayor peso. Cubre técnicas de caja negra, caja blanca, basadas en experiencia y colaboración: partición de equivalencia, valores límite, tablas de decisión, transición de estados, cobertura de sentencia/rama, predicción de errores, exploratorias, checklist, historias de usuario, criterios de aceptación y ATDD.
Técnicas de prueba
Este es el capítulo con mayor peso de estudio. Las técnicas ayudan a pasar de una base de prueba a condiciones, casos y datos de prueba de forma sistemática.
- Caja negra: deriva pruebas desde especificación y comportamiento externo.
- Caja blanca: deriva pruebas desde estructura interna y mide cobertura.
- Basadas en experiencia: usan conocimiento, defectos históricos e intuición profesional.
- Colaborativas: apoyan historias, criterios de aceptación y ATDD.
Técnicas caja negra K3
Las preguntas K3 exigen aplicar técnicas, no solo definirlas.
- Partición de equivalencia: divide datos en grupos tratados de forma equivalente.
- Valores límite: prueba bordes de particiones porque ahí suelen concentrarse defectos.
- Tabla de decisión: combina condiciones y acciones para reglas de negocio.
- Transición de estados: prueba estados, eventos y transiciones válidas/ inválidas.
Caja blanca y experiencia
Caja blanca usa elementos de cobertura como sentencias y ramas. Las basadas en experiencia complementan técnicas formales y son muy útiles cuando hay presión de tiempo o mucho conocimiento del dominio.
- Cobertura de sentencia = sentencias ejecutadas / total de sentencias ejecutables.
- Cobertura de rama = ramas o resultados de decisión cubiertos / total de ramas.
- 100% rama implica 100% sentencia, pero no necesariamente al revés.
- Exploratoria combina aprendizaje, diseño y ejecución dentro de una misión.
Términos clave
Objetivos de aprendizaje
- FL-4.1.1 · K2Distinguir técnicas caja negra, caja blanca y experiencia
Caja negra usa especificación/comportamiento; caja blanca usa estructura interna; experiencia usa conocimiento del tester, defectos históricos y dominio.
- FL-4.2.1 · K3Usar partición de equivalencia
Partición de equivalencia divide el dominio en grupos válidos e inválidos que deberían comportarse igual; se elige al menos un representante por partición.
- FL-4.2.2 · K3Usar análisis de valores límite
BVA se centra en los límites de particiones. Dos puntos prueba límite y vecino externo; tres puntos añade vecino interno/externo alrededor del límite.
- FL-4.2.3 · K3Usar tablas de decisión
Tabla de decisión modela combinaciones de condiciones y acciones. Es ideal para reglas de negocio con lógica combinatoria.
- FL-4.2.4 · K3Usar transición de estados
Transición de estados prueba cómo un objeto cambia de estado por eventos. Incluye transiciones válidas e inválidas.
- FL-4.3.1 · K2Explicar pruebas de sentencia
Prueba de sentencia diseña casos para ejecutar sentencias. Cobertura = sentencias ejecutadas / sentencias ejecutables totales.
- FL-4.3.2 · K2Explicar pruebas de rama
Prueba de rama cubre resultados de decisiones. Cobertura = ramas ejecutadas / ramas totales.
- FL-4.3.3 · K2Explicar valor de caja blanca
Caja blanca permite medir cobertura estructural, descubrir código no cubierto, complementar caja negra y aumentar confianza técnica.
- FL-4.4.1 · K2Explicar predicción de errores
Predicción de errores anticipa defectos probables usando experiencia, datos históricos, conocimiento técnico y del dominio.
- FL-4.4.2 · K2Explicar pruebas exploratorias
Prueba exploratoria combina aprendizaje, diseño y ejecución. Se guía por un charter y se documentan observaciones, cobertura y hallazgos.
- FL-4.4.3 · K2Explicar pruebas basadas en listas de comprobación
Checklist-based testing usa listas de comprobación de aspectos a cubrir. Da flexibilidad y rapidez, pero necesita mantenimiento.
- FL-4.5.1 · K2Explicar escritura colaborativa de historias
La escritura colaborativa de historias junta negocio, desarrollo y prueba para construir entendimiento compartido y criterios comprobables.
- FL-4.5.2 · K2Clasificar opciones para criterios de aceptación
Criterios de aceptación definen condiciones para aceptar una historia. Pueden ser orientados a reglas o escenarios, por ejemplo Dado-Cuando-Entonces.
- FL-4.5.3 · K3Usar ATDD para derivar casos
ATDD deriva pruebas de aceptación desde criterios acordados colaborativamente. Los ejemplos guían desarrollo y validación.
Errores frecuentes
- Caja negra se basa en comportamiento especificado; caja blanca en estructura interna.
- Valores límite se concentran en bordes de particiones; no en valores aleatorios.
- Cobertura de rama 100% implica cobertura de sentencia 100%, pero no al contrario.
- ATDD deriva pruebas desde criterios de aceptación y colaboración, no desde el código.
Ejemplos aplicados
- Límite de monto: si el sistema acepta de 1 a 500.000, valores 0, 1, 2, 499.999, 500.000 y 500.001 son candidatos fuertes.
- Un estado de transacción puede pasar de iniciada a autorizada, rechazada, reversada o cancelada; las transiciones guían casos de prueba.
