Fundamentos de la Prueba
La prueba de software evalúa la calidad de los artefactos y ayuda a reducir el riesgo de fallas. Este capítulo cubre objetivos de prueba, depuración, necesidad de probar, principios, actividades, testware, trazabilidad, roles, habilidades, enfoque de equipo completo e independencia.
Idea central del capítulo
Probar es evaluar productos de trabajo y software para encontrar información útil sobre calidad y riesgo. No se limita a ejecutar casos; también incluye planificar, analizar, diseñar, preparar, ejecutar, monitorear, controlar y cerrar actividades de prueba.
- Objetivos típicos: encontrar fallas y defectos, prevenir defectos, reducir riesgo, comprobar requisitos, validar necesidades y apoyar decisiones.
- La depuración es distinta: busca la causa del fallo y la corrige; la prueba revela el problema y aporta evidencia.
- QA es más amplio que pruebas: QA se enfoca en procesos y prevención; las pruebas aportan medición y evidencia sobre el producto.
Principios que más salen en examen
Los siete principios funcionan como reglas de razonamiento para responder preguntas de teoría.
- Las pruebas muestran presencia de defectos, no su ausencia.
- Las pruebas exhaustivas son imposibles salvo casos triviales.
- Probar temprano ahorra tiempo y dinero.
- Los defectos tienden a agruparse en zonas críticas.
- La paradoja del pesticida obliga a renovar pruebas.
- Las pruebas dependen del contexto.
- Ausencia de defectos no significa utilidad para el negocio.
Proceso, testware y trazabilidad
El syllabus presenta la prueba como un proceso adaptable al contexto. Cada actividad produce testware y debe poder trazarse contra la base de prueba.
- Base de prueba: requisitos, historias, arquitectura, diseño, código u otros artefactos usados para derivar pruebas.
- Testware: condiciones, casos, datos, procedimientos, suites, scripts, ambientes, resultados, defectos e informes.
- La trazabilidad permite medir cobertura, analizar impacto de cambios y justificar decisiones.
Términos clave
Objetivos de aprendizaje
- FL-1.1.1 · K1Identificar los objetivos típicos de la prueba
Los objetivos de prueba cambian según contexto, pero suelen incluir encontrar defectos, prevenir defectos, evaluar calidad, reducir riesgo, verificar requisitos, validar necesidades y apoyar decisiones de liberación.
- FL-1.1.2 · K2Diferenciar pruebas de depuración
La prueba revela fallas y aporta información. La depuración localiza la causa de una falla, corrige el defecto y puede verificar técnicamente la corrección.
- FL-1.2.1 · K2Ejemplificar por qué las pruebas son necesarias
Las pruebas son necesarias porque el software puede fallar por errores humanos, defectos en artefactos, malentendidos, cambios, complejidad o condiciones de entorno.
- FL-1.2.2 · K1Recordar la relación entre pruebas y aseguramiento de la calidad
QA se enfoca en procesos y prevención; las pruebas evalúan productos y entregan información sobre calidad. Ambas forman parte de la gestión de calidad.
- FL-1.2.3 · K2Distinguir entre causa raíz, error, defecto y falla
Error es acción humana equivocada; defecto es imperfección introducida en un producto de trabajo; falla es comportamiento incorrecto observado; causa raíz es la razón fundamental que originó el defecto.
- FL-1.3.1 · K2Explicar los siete principios de prueba
Los siete principios orientan decisiones de prueba: presencia no ausencia, imposibilidad de exhaustividad, prueba temprana, agrupación de defectos, paradoja del pesticida, dependencia del contexto y falacia de ausencia de errores.
- FL-1.4.1 · K2Resumir actividades y tareas de prueba
El proceso de prueba incluye planificación, monitoreo y control, análisis, diseño, implementación, ejecución y finalización. Estas actividades pueden solaparse y adaptarse al contexto.
- FL-1.4.2 · K2Explicar el impacto del contexto en el proceso de prueba
El proceso de prueba depende de factores como dominio, riesgos, modelo de desarrollo, equipo, herramientas, regulación, tiempo y criticidad.
- FL-1.4.3 · K2Diferenciar el testware que respalda las actividades de prueba
Testware son productos de trabajo usados o producidos por pruebas: condiciones, casos, datos, procedimientos, suites, scripts, ambientes, resultados, defectos e informes.
- FL-1.4.4 · K2Explicar el valor de mantener trazabilidad
La trazabilidad conecta base de prueba, condiciones, casos, resultados y defectos. Permite cobertura, impacto, auditoría y control de cambios.
- FL-1.4.5 · K2Comparar roles en pruebas
ISTQB distingue roles de gestión de pruebas y roles de prueba. La misma persona puede asumir diferentes roles según contexto.
- FL-1.5.1 · K2Dar ejemplos de habilidades genéricas requeridas para probar
El tester necesita pensamiento crítico, curiosidad, comunicación, análisis, conocimiento del dominio, atención al detalle, colaboración y habilidades técnicas según contexto.
- FL-1.5.2 · K1Recordar ventajas del enfoque de equipo completo
En el enfoque de equipo completo, la calidad es responsabilidad compartida. Negocio, desarrollo, operaciones y pruebas colaboran desde temprano.
- FL-1.5.3 · K2Distinguir beneficios e inconvenientes de la independencia de pruebas
La independencia aporta objetividad y puede encontrar defectos que el autor no ve, pero demasiada separación puede crear silos y retrasos.
Errores frecuentes
- No confundir probar con ejecutar pruebas: probar incluye planificación, análisis, diseño, implementación, ejecución, monitoreo, control y cierre.
- Las pruebas no demuestran ausencia de defectos; reducen riesgo y aumentan confianza.
- Depuración no es prueba: la depuración localiza, analiza y corrige causas de fallos.
- QA es más amplio que pruebas; las pruebas aportan información sobre la calidad.
Ejemplos aplicados
- En datáfonos, probar no es solo hacer una venta: también se revisan requisitos, riesgos, datos, ambientes, logs, evidencias y defectos.
- Una falla visible podría ser 'transacción rechazada'. El defecto podría estar en la validación del campo, y la causa raíz en una mala interpretación del estándar.
