SlideShare una empresa de Scribd logo
1 de 14
• Se trata de probar módulos sueltos
• Fase informal previa
– Ejecutar pequeños ejemplos
– Hay herramientas que analizan automáticamente la sintaxis
de los programas
• Fase de prueba sistemática
– Pruebas de caja negra: Se prueba la funcionalidad del
módulo sin atender a su contenido
– Pruebas de caja blanca (o transparente): Se mira con lupa la
estructura del código escrito
Caja blanca

• También llamadas:
– Pruebas estructurales
– Pruebas de caja transparente
• Su objetivo es probar exhaustivamente la
estructura del código
• Cobertura: es una medida del porcentaje de
código que ha sido probado o “cubierto” con
las pruebas. Hay varios tipos:
– Cobertura de segmentos
– Cobertura de ramas
– Cobertura de condición/decisión
– Cobertura de bucles
Caja blanca


• Cobertura de segmentos (o de sentencias)
– Segmento: secuencia de sentencias sin puntos de decisión
– El nº de sentencias es finito. Hay que ser precavido a la hora de elegir
cuándo parar
– No se suele pasar por todas las sentencias sino por una mayoría elegida
adecuadamente


• Cobertura de ramas
– ¿Qué ocurre con los segmentos opcionales? if (condición) {EjecutaEsto}
– Hay que probar cuándo la condición se cumple y cuñando falla
– Refinamiento: hay que recorrer todas las posibles salidas de los puntos de
decisión (y excepciones)
Caja blanca

• Cobertura de condición/decisión
if (condición1 || condición2) {HazEsto}
– Sólo 2 ramas, pero 4 posibles combinaciones
– Hay que definir un criterio de cobertura sobre las combinaciones
Cobertura de bucles
– Los bucles son una fuente inagotable de errores.
– Pruebas para un bucle WHILE:
1. 0 ejecuciones
2. 1 ejecución
3. Más de 1 ejecución
– Pruebas para un bucle DO/WHILE:
1. 1 ejecución
2. Más de 1 ejecución
– Pruebas para un bucle FOR:
• Son muy seguros: basta ejecutarlos una vez
• Conviene examinarlos por si acaso.
– Las pruebas de caja blanca comprueban la estructura no la funcionalidad.
– Un programa puede estar bien, y sin embargo no servir a la función que
pretende (lo que hace, lo hace bien, pero no hace lo que queríamos que
hiciese)
– Necesitamos comprobar la funcionalidad con pruebas de caja negra.
Caja negra


• También llamadas:
– Pruebas de caja opaca
– Pruebas funcionales
– Pruebas de entrada/salida
– Pruebas inducidas por los datos
• Su objetivo es probar la funcionalidad del código
• Intentan encontrar casos en los que el módulo no atiende a su especificación.
• Especialmente indicadas en los módulos que van a ser interfaz con el usuario.
Caja negra




• Cobertura de especificación: nº de requisitos que se han probado.
• El problema: el conjunto de datos suele ser muy amplio
• Solución: “Clases de equivalencia”
• Recetas para identificarlas:
– Por debajo, en y por encima del rango
– Por debajo, en y por encima del valor concreto
– En el conjunto o fuera de él
– Verdadero o falso
– Los mismos criterios para las salidas
– Las pruebas de caja negra comprueban la funcionalidad.
– No comprueban si el programa hace además cosas que no debería (ej:
un virus)
– No es suficiente con sólo pruebas de caja negra
• Involucran varios módulos
• Pueden ser estructurales o funcionales
– Estructurales: como las de caja blanca, pero analizando llamadas entre
módulos
– Funcionales: como las de caja negra, pero comprobando funcionalidades
conjuntas
– Se siguen utilizando clases de equivalencia y análisis de valores frontera
• Las pruebas finales consideran todo el sistema, cubriendo plenamente la
especificación de requisitos del usuario.
Diseño descendente: se comienza probando los módulos más generales
• Ventaja: Piensa en términos de funcionalidad global
• Inconveniente: No dispongo de los módulos inferiores
– Diseño ascendente: se comienza probando los módulos de base
• Ventaja: No hay que construir módulos ficticios
• Inconveniente: Se centra más en el desarrollo que en las
expectativas del cliente
– Codificación incremental: se codifican sólo las partes de cada módulo
necesarias para cada funcionalidad; una vez probada, se van añadiendo
funcionalidades
• Ventaja: Cuando hay mucha interacción con el usuario
• Inconveniente: No tenemos módulos completos hasta el final.
• Pruebas funcionales que realiza el cliente antes de poner la aplicación
en producción
• Hay errores que sólo el cliente puede detectar...“El cliente siempre
tiene razón”.
• Técnicas:
– Pruebas alfa: Se invita al cliente al entorno de desarrollo, trabajando
sobre un entorno controlado
– Pruebas beta: Se desarrollan en el entorno del cliente, que se queda
sólo con el producto en un entorno sin controlar
– Ambas pruebas son habituales cuando se va a distribuir el programa a
muchos clientes.
Estrategias de aplicación de pruebas

Más contenido relacionado

La actualidad más candente

Meetup TestingUy 2017 - Lo que aprendí de Rapid Software Testing con Michael ...
Meetup TestingUy 2017 - Lo que aprendí de Rapid Software Testing con Michael ...Meetup TestingUy 2017 - Lo que aprendí de Rapid Software Testing con Michael ...
Meetup TestingUy 2017 - Lo que aprendí de Rapid Software Testing con Michael ...TestingUy
 
Mpolo pruebas
Mpolo pruebasMpolo pruebas
Mpolo pruebasluisbasbe
 
No debuggearás - Introducción al Unit Testing y TDD
No debuggearás - Introducción al Unit Testing y TDDNo debuggearás - Introducción al Unit Testing y TDD
No debuggearás - Introducción al Unit Testing y TDDreyiyo
 

La actualidad más candente (7)

Prueba software orientado a objetos
Prueba software orientado a objetosPrueba software orientado a objetos
Prueba software orientado a objetos
 
Meetup TestingUy 2017 - Lo que aprendí de Rapid Software Testing con Michael ...
Meetup TestingUy 2017 - Lo que aprendí de Rapid Software Testing con Michael ...Meetup TestingUy 2017 - Lo que aprendí de Rapid Software Testing con Michael ...
Meetup TestingUy 2017 - Lo que aprendí de Rapid Software Testing con Michael ...
 
Practicas tecnicas
Practicas tecnicasPracticas tecnicas
Practicas tecnicas
 
Mantenimiento de sistemas
Mantenimiento de sistemasMantenimiento de sistemas
Mantenimiento de sistemas
 
Mpolo pruebas
Mpolo pruebasMpolo pruebas
Mpolo pruebas
 
Qualitytest
QualitytestQualitytest
Qualitytest
 
No debuggearás - Introducción al Unit Testing y TDD
No debuggearás - Introducción al Unit Testing y TDDNo debuggearás - Introducción al Unit Testing y TDD
No debuggearás - Introducción al Unit Testing y TDD
 

Destacado

BibliotecaDigital
BibliotecaDigitalBibliotecaDigital
BibliotecaDigitalCristi Coba
 
Prueba, caso de prueba, defecto, falla, error, verificación, validación
Prueba, caso de prueba, defecto, falla, error, verificación, validaciónPrueba, caso de prueba, defecto, falla, error, verificación, validación
Prueba, caso de prueba, defecto, falla, error, verificación, validaciónCristi Coba
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016Andrew Chen
 
The Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsThe Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsBarry Feldman
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome EconomyHelge Tennø
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your BusinessBarry Feldman
 

Destacado (7)

BibliotecaDigital
BibliotecaDigitalBibliotecaDigital
BibliotecaDigital
 
Prueba, caso de prueba, defecto, falla, error, verificación, validación
Prueba, caso de prueba, defecto, falla, error, verificación, validaciónPrueba, caso de prueba, defecto, falla, error, verificación, validación
Prueba, caso de prueba, defecto, falla, error, verificación, validación
 
pruebas de cajas blanca
 pruebas de cajas blanca pruebas de cajas blanca
pruebas de cajas blanca
 
What's Next in Growth? 2016
What's Next in Growth? 2016What's Next in Growth? 2016
What's Next in Growth? 2016
 
The Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsThe Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post Formats
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome Economy
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
 

Similar a Estrategias de aplicación de pruebas

Similar a Estrategias de aplicación de pruebas (20)

Pruebas-OCW.pdf
Pruebas-OCW.pdfPruebas-OCW.pdf
Pruebas-OCW.pdf
 
U2T4 - Pruebas del Software
U2T4 - Pruebas del SoftwareU2T4 - Pruebas del Software
U2T4 - Pruebas del Software
 
Software caja negra y caja blanca
Software caja negra y caja blancaSoftware caja negra y caja blanca
Software caja negra y caja blanca
 
Prueba de-caja-negra-y-caja-blanca pwp
Prueba de-caja-negra-y-caja-blanca pwpPrueba de-caja-negra-y-caja-blanca pwp
Prueba de-caja-negra-y-caja-blanca pwp
 
Pruebas automaticas
Pruebas automaticasPruebas automaticas
Pruebas automaticas
 
15_pruebaSW.ppt
15_pruebaSW.ppt15_pruebaSW.ppt
15_pruebaSW.ppt
 
Calidad del software cap2
Calidad del software   cap2Calidad del software   cap2
Calidad del software cap2
 
20180313 Keep Calm And Test Your Code RiojaDotNet
20180313 Keep Calm And Test Your Code RiojaDotNet20180313 Keep Calm And Test Your Code RiojaDotNet
20180313 Keep Calm And Test Your Code RiojaDotNet
 
Clean code 9
Clean code 9Clean code 9
Clean code 9
 
Codigo Escalable WDT
Codigo Escalable WDTCodigo Escalable WDT
Codigo Escalable WDT
 
Gestión de pruebas en desarrollo software
Gestión de pruebas en desarrollo softwareGestión de pruebas en desarrollo software
Gestión de pruebas en desarrollo software
 
Doble o nada
Doble o nadaDoble o nada
Doble o nada
 
Modelo pruebas
Modelo pruebasModelo pruebas
Modelo pruebas
 
Pruebas
PruebasPruebas
Pruebas
 
Taller definición bugs
Taller definición bugsTaller definición bugs
Taller definición bugs
 
Vuelta_a_los_origines_Testing.pdf
Vuelta_a_los_origines_Testing.pdfVuelta_a_los_origines_Testing.pdf
Vuelta_a_los_origines_Testing.pdf
 
To mock or not to mock
To mock or not to mockTo mock or not to mock
To mock or not to mock
 
S5-CDSQA.pptx
S5-CDSQA.pptxS5-CDSQA.pptx
S5-CDSQA.pptx
 
Verificacion --validacion
Verificacion --validacionVerificacion --validacion
Verificacion --validacion
 
Prueba
PruebaPrueba
Prueba
 

Último

SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dstEphaniiie
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxKarlaMassielMartinez
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdfDemetrio Ccesa Rayme
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024AndreRiva2
 

Último (20)

SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Dinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes dDinámica florecillas a María en el mes d
Dinámica florecillas a María en el mes d
 
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptxTECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
TECNOLOGÍA FARMACEUTICA OPERACIONES UNITARIAS.pptx
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Neurociencias para Educadores NE24 Ccesa007.pdf
Neurociencias para Educadores  NE24  Ccesa007.pdfNeurociencias para Educadores  NE24  Ccesa007.pdf
Neurociencias para Educadores NE24 Ccesa007.pdf
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024UNIDAD DPCC. 2DO. DE  SECUNDARIA DEL 2024
UNIDAD DPCC. 2DO. DE SECUNDARIA DEL 2024
 
Unidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la InvestigaciónUnidad 3 | Metodología de la Investigación
Unidad 3 | Metodología de la Investigación
 

Estrategias de aplicación de pruebas

  • 1.
  • 2.
  • 3. • Se trata de probar módulos sueltos • Fase informal previa – Ejecutar pequeños ejemplos – Hay herramientas que analizan automáticamente la sintaxis de los programas • Fase de prueba sistemática – Pruebas de caja negra: Se prueba la funcionalidad del módulo sin atender a su contenido – Pruebas de caja blanca (o transparente): Se mira con lupa la estructura del código escrito
  • 4. Caja blanca • También llamadas: – Pruebas estructurales – Pruebas de caja transparente • Su objetivo es probar exhaustivamente la estructura del código • Cobertura: es una medida del porcentaje de código que ha sido probado o “cubierto” con las pruebas. Hay varios tipos: – Cobertura de segmentos – Cobertura de ramas – Cobertura de condición/decisión – Cobertura de bucles
  • 5. Caja blanca • Cobertura de segmentos (o de sentencias) – Segmento: secuencia de sentencias sin puntos de decisión – El nº de sentencias es finito. Hay que ser precavido a la hora de elegir cuándo parar – No se suele pasar por todas las sentencias sino por una mayoría elegida adecuadamente • Cobertura de ramas – ¿Qué ocurre con los segmentos opcionales? if (condición) {EjecutaEsto} – Hay que probar cuándo la condición se cumple y cuñando falla – Refinamiento: hay que recorrer todas las posibles salidas de los puntos de decisión (y excepciones)
  • 6. Caja blanca • Cobertura de condición/decisión if (condición1 || condición2) {HazEsto} – Sólo 2 ramas, pero 4 posibles combinaciones – Hay que definir un criterio de cobertura sobre las combinaciones Cobertura de bucles – Los bucles son una fuente inagotable de errores. – Pruebas para un bucle WHILE: 1. 0 ejecuciones 2. 1 ejecución 3. Más de 1 ejecución – Pruebas para un bucle DO/WHILE: 1. 1 ejecución 2. Más de 1 ejecución – Pruebas para un bucle FOR: • Son muy seguros: basta ejecutarlos una vez • Conviene examinarlos por si acaso.
  • 7. – Las pruebas de caja blanca comprueban la estructura no la funcionalidad. – Un programa puede estar bien, y sin embargo no servir a la función que pretende (lo que hace, lo hace bien, pero no hace lo que queríamos que hiciese) – Necesitamos comprobar la funcionalidad con pruebas de caja negra.
  • 8. Caja negra • También llamadas: – Pruebas de caja opaca – Pruebas funcionales – Pruebas de entrada/salida – Pruebas inducidas por los datos • Su objetivo es probar la funcionalidad del código • Intentan encontrar casos en los que el módulo no atiende a su especificación. • Especialmente indicadas en los módulos que van a ser interfaz con el usuario.
  • 9. Caja negra • Cobertura de especificación: nº de requisitos que se han probado. • El problema: el conjunto de datos suele ser muy amplio • Solución: “Clases de equivalencia” • Recetas para identificarlas: – Por debajo, en y por encima del rango – Por debajo, en y por encima del valor concreto – En el conjunto o fuera de él – Verdadero o falso – Los mismos criterios para las salidas
  • 10. – Las pruebas de caja negra comprueban la funcionalidad. – No comprueban si el programa hace además cosas que no debería (ej: un virus) – No es suficiente con sólo pruebas de caja negra
  • 11. • Involucran varios módulos • Pueden ser estructurales o funcionales – Estructurales: como las de caja blanca, pero analizando llamadas entre módulos – Funcionales: como las de caja negra, pero comprobando funcionalidades conjuntas – Se siguen utilizando clases de equivalencia y análisis de valores frontera • Las pruebas finales consideran todo el sistema, cubriendo plenamente la especificación de requisitos del usuario.
  • 12. Diseño descendente: se comienza probando los módulos más generales • Ventaja: Piensa en términos de funcionalidad global • Inconveniente: No dispongo de los módulos inferiores – Diseño ascendente: se comienza probando los módulos de base • Ventaja: No hay que construir módulos ficticios • Inconveniente: Se centra más en el desarrollo que en las expectativas del cliente – Codificación incremental: se codifican sólo las partes de cada módulo necesarias para cada funcionalidad; una vez probada, se van añadiendo funcionalidades • Ventaja: Cuando hay mucha interacción con el usuario • Inconveniente: No tenemos módulos completos hasta el final.
  • 13. • Pruebas funcionales que realiza el cliente antes de poner la aplicación en producción • Hay errores que sólo el cliente puede detectar...“El cliente siempre tiene razón”. • Técnicas: – Pruebas alfa: Se invita al cliente al entorno de desarrollo, trabajando sobre un entorno controlado – Pruebas beta: Se desarrollan en el entorno del cliente, que se queda sólo con el producto en un entorno sin controlar – Ambas pruebas son habituales cuando se va a distribuir el programa a muchos clientes.