Your SlideShare is downloading. ×
Clase 05b pruebas introduccion
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Clase 05b pruebas introduccion

265
views

Published on

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
265
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
31
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Pruebas de Software(to err is human but to really foul things up requires a computer) Universidad de los Andes Demián Gutierrez Febrero 2013 1
  • 2. ¿qué es unaprueba de software? 2
  • 3. Pruebas de Software 3
  • 4. ¿Qué es una Prueba? Manejador de la Prueba (Test Driver) estructura general de una prueba Hay Frameworks como JUnit que facilitan escribir pruebas 4
  • 5. ¿qué es una prueba “ad-hoc”?¿qué es una prueba “automatizada”? 5
  • 6. ¿quién prueba el software? 6
  • 7. ¿quién?¿desarrolladores / programadores o un equipo separado de pruebas? 7
  • 8. ¿quién prueba?aunque los métodos ágiles han cambiado un poco esta visión 8
  • 9. tiposde pruebas de software (técnicas) 9
  • 10. Pruebas de Software Caja Negra (entradas vs salidas, sin ver código) Caja Blanca (viendo código, Pruebas De Defectos en base al código) De Regresión (Automatizadas) 10
  • 11. Pruebas Caja Negra Entrada ? Salida Se desconoce cómo funciona internamente la unidad de software bajo prueba, la idea es aplicar un conjunto de entradas y obtener un conjunto de salidas si las salidas concuerdan con las especificaciones entonces la prueba pasa 11
  • 12. ¿cómo se seleccionan los valores de entrada?(para las pruebas caja negra) 12
  • 13. ¿como se seleccionan los valores de entrada?(para las pruebas caja negra)valores representativos del conjunto de entradas posibles valores fronterasvalores o combinaciones de valores conflictivos 13
  • 14. Pruebas de Software Caja Negra (entradas vs salidas, sin ver código) Caja Blanca (viendo código, Pruebas De Defectos en base al código) De Regresión (Automatizadas) 14
  • 15. Pruebas Caja Blanca while ((line = rd.readLine()) != null) { line = line.trim(); if (line.startsWith("#")) { continue; } if (line.equals("")) { continue; Entrada } Salida String[] values = line.split("(s)+"); int r = Integer.parseInt(values[0]); int g = Integer.parseInt(values[1]); int b = Integer.parseInt(values[2]); colorList.add(new Color(r, g, b)); } el conocimiento del código define las pruebas y las entradas las pruebas se diseñan de manera que se garantice la cobertura de cierta cantidad de código 15
  • 16. Pruebas de Software Caja Negra (entradas vs salidas, sin ver código) Caja Blanca (viendo código, Pruebas De Defectos en base al código) De Regresión (Automatizadas) 16
  • 17. De Regresión La idea es contar con un conjunto depruebas automatizadas que formen una“red de seguridad”y permitan verificar“con un sólo click” que el sistema está funcionando correctamente y que no se ha roto nada de forma inesperada prueba prueba prueba prueba prueba prueba prueba prueba prueba prueba prueba prueba prueba prueba prueba prueba 17
  • 18. ¿pueden las pruebasmostrar la ausencia totalde errores en el software bajo prueba? 18
  • 19. Pruebas de Software Las pruebas pueden mostrar la presencia de errores, pero no su ausencia, de hecho, no es posible demostrar la ausencia de errores en un sistema Dijkstra Esto, curiosamente, tiene mucho que ver con los conceptos de decidibilidad y computabilidad 19
  • 20. Pruebas de Software las pruebas permiten detectar errores luego... estos errores de deben registrar (bugtracking) se deben corregir (depuración) y se les debe hacer seguimiento (bugtracking) aunque el seguimiento no se hace sólo al final, sino al lo largo de todo el proceso 20
  • 21. y sin embargo...probar es mucho más queencontrar bugs, probar es generar conocimiento (aprender sobre el sistema bajo prueba) Agile Testing Quadrantshttp://lisacrispin.com/2011/11/08/using-the-agile-testing-quadrants/ 21
  • 22. ¿Costos de las Pruebas? Las pruebas de software representan la actividad más extenuante y costosa del desarrollo de software, se estima que: 30% - 50% de los recursos requeridos en un proyecto de desarrollo de software son asignados a las pruebas 60% del tiempo de los desarrolladores es utilizado en la corrección de errores (Capers Jones, 1996) 22 Curso IS-412 Unidad 1 V2.0.ppt CEISOFT/BIOSOFT
  • 23. ¿Costos de las Pruebas? sin embargo... Un estudio realizado por el Instituto de Estándares de EEUU (NIST) en el 2002 encontró que: El costo de realizar inadecuadamente pruebas de software oscila entre 22-60 millardos de dólares por año (sólo en EEUU) Se ha estimado que el costo ocasionado por las fallas de software se puede reducir en más de un tercio (1/3) mejorando las pruebas (NIST, 2002) 23 Curso IS-412 Unidad 1 V2.0.ppt CEISOFT/BIOSOFT
  • 24. Métodos / Procesos / Técnicas proceso de pruebas / plan de pruebas Curso IS-412 Unidad 1 V2.0.ppt Lámina 40-42 24
  • 25. Concepto: El proceso de pruebas ● Las actividades requeridas para llevar a cabo el proceso de pruebas se representan mediante un modelo de procesos El Modelo de Procesos de Prueba de Pfleeger (1998) 25
  • 26. Concepto: El plan de pruebas ● Plan de Pruebas – Es un documento que describe en detalle lo siguiente: ● Los objetivos de las pruebas ● Los niveles y tipos de pruebas que deberán realizarse ● Los criterios de terminación de cada tipo de prueba ● El modelo de proceso que se seguirá para ejecutar las pruebas ● El cronograma de actividades de pruebas ● Las responsabilidades de los miembros del grupo de pruebas ● Las técnicas y estrategias que se emplearán ● Los recursos requeridos para ejecutar las pruebas ● Los documentos que deben producirse durante las pruebas ● Los procedimientos de pruebas: casos de pruebas 26
  • 27. Gracias ¡Gracias! 27

×