Antes, veamos la estructura del proyecto antes de crear cualquier clase.
Nuestro ejemplo de prueba con JUNIT calculara el área de un cuadrado y un rectángulo. Para esto crearemos 2 clases:
- Cuadrado.java
- Rectángulo.java
- TestCuadrado.java
- TestRectángulo.java
A continuación el código fuente de las clases:
package com.nj.ejemplo; public class Cuadrado { private int lado; public Cuadrado(int lado){ this.lado = lado; } public int getArea(){ return (int)Math.pow(this.lado, 2); //return lado*lado; } }
package com.nj.ejemplo; public class Rectangulo { private int base; private int altura; public Rectangulo(int base, int altura){ this.base = base; this.altura = altura; } public int getArea(){ return base*altura; } }
El código fuente de nuestras clases tester son:
package com.nj.ejemplo; import junit.framework.TestCase; public class TestRectangulo extends TestCase { public void testArea(){ Rectangulo objR = new Rectangulo (3,2); assertEquals(6, objR.getArea()); } }
package com.nj.ejemplo; import junit.framework.TestCase; public class TestCuadrado extends TestCase { public void testArea(){ Cuadrado objC = new Cuadrado (5); assertEquals(25, objC.getArea()); } }
Estas clases tester deben heredar la clase TestCase. También para que nuestra pruebe se ejecute usamos la función assertEquals, que compara 2 variables. Por ejemplo para Cuadrado, nosotros esperamos un 25, y recibimos un entero de la función getArea().
Para probar nuestro ejemplo, podemos hacer click derecho sobre la clase, y "ejecutar como" "Junit Test" (pueden agrandar la imagen)
El resultado de esta ejecución es (click en la imagen para agrandar):
El resultado es positivo, puesto que 6 es igual a al area de un rectangulo de 3 x 2. ¿Pero que sucede si cambiamos nuestro código de prueba?. Si cambiamos el resultado esperado de la clase TestRectangulo a 7:
package com.nj.ejemplo; import junit.framework.TestCase; public class TestRectangulo extends TestCase { public void testArea(){ Rectangulo objR = new Rectangulo (3,2); assertEquals(7, objR.getArea()); } }
Al compilar y ejecutar tenemos (click en la imagen para agrandar):
Incluso nos dice porque falla; lo configuramos para esperar un 7, pero llegó un 6.
Espero te haya sido de utilidad este sencillo ejemplo de JUNIT, y si te gusto puedes compartirlo.
No hay comentarios.:
Publicar un comentario