test-code-refactor juan carlos olivares rojas msn: [email protected]...
TRANSCRIPT
![Page 1: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/1.jpg)
Test-Code-Refactor
Juan Carlos Olivares Rojas
MSN: [email protected]@itmorelia.edu.mx
http://antares.itmorelia.edu.mx/~jcolivar/@jcolivares
Social Network: Facebook, LinkedIn. Hi5
![Page 2: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/2.jpg)
• Es la propuesta básica de TDD y de XP
• La recomendación es escribir los casos de prueba, realizar la codificación necesaria para que se pasen las pruebas y posteriormente se refactoriza el código.
• La refactorización se verá en la próxima unidad temática.
Test-Code-Refactor
![Page 3: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/3.jpg)
Extreme Testing• Las programación extrema tienen las
siguientes ventajas en lo que respecta al proceso de pruebas:
• Se gana confianza ya que el código debe cumplir las especificaciones.
• Se tiene el resultado final del código antes de codificar
![Page 4: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/4.jpg)
Extreme Testing
• Se entiende mucho mejor las especificaciones y requerimientos de la aplicación.
• Se inicia con diseños simples y se refactoriza el código después para mejorar el desempeño sin preocuparse de que se estén rompiendo las especificaciones.
![Page 5: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/5.jpg)
Plan de Pruebas
• Se recomienda utilizar la metodología y formatos del estándar IEEE 829 para documentación de pruebas de software:
• Pasos que incluye:
• Identificador de plan de pruebas (se muestra el estándar a seguir para el nombre de las pruebas)
![Page 6: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/6.jpg)
Plan de Pruebas• Introducción (en que consiste las pruebas
del sistema)
• Elementos a probar• Características a ser probadas• Características que no se probarán
• Enfoque• Criterio de fallo o aceptación de los
elementos
![Page 7: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/7.jpg)
Plan de Pruebas• Criterio de Suspensión y Reanudación de
requerimientos
• Entregables de las pruebas• Tareas de las pruebas• Necesidades del entorno• Responsabilidades• Equipo y necesidades de capacitación• Agenda
![Page 8: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/8.jpg)
Plan de Pruebas• Riesgos y contingencias• Acuerdos
• A las pruebas se les ha empezado a llamar de manera formal verificación y validación.
• Existen metodologías más robustas como el TMMI (Test Maturity Model)
![Page 9: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/9.jpg)
Plan de pruebas
![Page 10: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/10.jpg)
Formato Plan de Pruebas ID: 1 Nombre: Enviar artículo Probado por: Fulanito Descripción: Se introducen los datos del artículo y de los autores.
Condiciones de Entrada: nombreArticulo=“Calidad del Sw” … emailAutor=“[email protected]”
Resultado Esperado: El sistema confirma la correcta recepción del artículo enviando un e-mail al autor de contacto con un userid y password para que el autor pueda posteriormente acceder al artículo.
Resultado Obtenido: Se generan bien userid y password pero el correo no llegó.
Criterio de Aceptación: No.
![Page 11: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/11.jpg)
Práctica de Laboratorio• Realizar un programa que permita
calcular el área de un triángulo conociendo tres lados utilizando la fórmula de herón.
• Realizar el plan de pruebas que garantice que el programa está libre de errores
![Page 12: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/12.jpg)
Arquitectura
![Page 13: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/13.jpg)
Casos de Pruebas• ¿Con cuantos casos de prueba valido que el
software está correcto?
• Para cada caso de prueba sólo indicar las posibles entradas.
• Por ejemplo:
• Caso de Prueba 1: A=3 B=4 C=5, el resultado esperado debe de ser 6.
• ¿Es diferente el caso A=4 B=3 C=5?
![Page 14: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/14.jpg)
Casos de Prueba• Tipos de Triángulo en Base a sus lados:
• Se deben tener al menos un caso de cada uno de ellos y al menos un caso no válido: A=0 B=-1 C=“Hola”.
![Page 15: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/15.jpg)
Caso de Prueba• ¿Cuál es el resultado esperado para el
caso de prueba A=1 B=2 C=3?
• Area=0
• ¿Qué pasó?
• !Exento este parcial quien pueda dibujar un triangulo de dimensiones 1, 2 y 3 cm para cada lado!
![Page 16: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/16.jpg)
Práctica• Construir todos los casos de prueba
seleccionados en JUnit.
• Crear el código para pasar las pruebas.
• Primero deben de compilar las pruebas, posteriormente deben de dar los valores esperados.
• Se pueden juntar varias clases de prueba en un “Test Suite”.
![Page 17: Test-Code-Refactor Juan Carlos Olivares Rojas MSN: juancarlosolivares@hotmail.com jcolivar@itmorelia.edu.mx jcolivar](https://reader036.vdocuments.net/reader036/viewer/2022062309/5665b4c91a28abb57c93ac81/html5/thumbnails/17.jpg)
¿Preguntas?