Test-Code-Refactor
Juan Carlos Olivares Rojas
MSN: [email protected]
[email protected]
http://antares.itmorelia.edu.mx/~jcolivar/
@jcolivares
Social Network: Facebook, LinkedIn. Hi5
Test-Code-Refactor
• 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.
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
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.
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)
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
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
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)
Plan de pruebas
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” … [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ó.
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
Arquitectura
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?
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”.
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!
Práctica
• Construir todos los
seleccionados en JUnit.
casos
de
prueba
• 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”.
¿Preguntas?
Descargar

Clase modelo