Esquemas de pruebas

download Esquemas de pruebas

If you can't read please download the document

description

Configuración de un esquema de pruebas con Java y herramientas de Software LIbre

Transcript of Esquemas de pruebas

  • 1. Diseo de esquema de pruebas Analisis y Diseo 2 Primer Semestre 2009 Victor Leonel Orozco http://tuxtor.shekalug.org

2. Agenda

  • Estrategias de debug

3. De que se trata? 4. Tipos de pruebas 5. Pruebas unitarias 6. Pruebas integracin 7. Pruebas sistema 8. Junit (xUnit) 9. Ejemplo de JUnit 10. Junit+Hudson 11. Practica 12. Estrategias de debug

  • Malas practicas

13. Debuggers 14. Esquemas de pruebas 15. De que se trata? ... System.out.println(Valor de a: +a); } Valor de a: 5 *La clave es comparar valor esperado con valor real El programa funcionara si a termina con valor 5 16. De que se trata? WTF?? 17. Tipos de pruebas de software

  • Por enfoque
  • Caja blanca, pruebas estructurales

18. Caja negra, pruebas funcionales Por dimension

  • Unitarias

19. Integracion (incrementales) 20. Sistema (verificacion) Mas informacion http://kybele.escet.urjc.es/documentos/ISG/%5BISG-2006-07%5DPruebasSoftware.pdf 21. Pruebas unitarias

  • Prueba modular, si es necesario uso de drivers y stubs
  • Codigo

22. Procedimientos 23. Objetos 24. Paquetes (no muy comun) Flujos de ejecucin, decisiones, valores de variables. 25. Integracin

  • Tecnica de prueba incremental

26. Modulos de forma unitaria e ir construyendo el programa

  • Partir del modulo principal e ir construyendo (top-down)

27. Ejecutar las pruebas una por una e ir construyendo (botom-up) 28. Sistema

  • Se integra el software con el resto del sistema
  • Hardware, software legacy, sistemas externos

Tres tipos

  • Recuperacin

29. Estres 30. Seguridad 31. Estrategia de pruebas de software

  • Una estrategia de pruebas incorpora
  • Planificacin de pruebas

32. Diseo de casos de prueba Partes

  • Datos de entrada

33. Resultados esperados 34. Limite del modulo a probar 35. Pruebas de software Algunos consejos:

  • Al disear casos de prueba siempre definir salida esperada

36. No probar programas propios (para produccin) 37. Inspeccionar a conciencia los resultados 38. Hacer pruebas de exitos y fallos 39. Pruebas unitarias automaticas

  • En los ltimos aos se han desarrollado un conjunto de herramientas que facilitan la elaboracin de pruebas unitarias en diferentes lenguajes. Dicho conjunto se denomina Xunit
  • Junit

40. Nunit 41. Phpunit 42. Httpunit 43. Pyunit 44. ..... 45. Como funcionan entonces?

  • xunit son herramientas para comparar, solo definimos que es lo que esperamos como resultado y xunit lo compara y nos informa el resultado.

Error Exito 46. El secreto esta en los Asserts

  • Existen varios tipos de asserts (8 para junit)
  • assertEquals

47. assertArrayEquals 48. assertSame 49. assertFalse 50. assertNull 51. assertNotNull 52. assertTrue 53. fail (Muy usado en try y catch) Cuando xunit detecta que un assert ha fallado la aade a su informe. 54. El ejemplo de hoy...

  • Mas informacion de Junit:
  • http://junit.org/junit/javadoc/4.5/

55. http://www.junit.org 56. Google: Junit 57. En cada salto grande de version, las pruebas se hacen incompatibles