Mostrando entradas con la etiqueta junit. Mostrar todas las entradas
Mostrando entradas con la etiqueta junit. Mostrar todas las entradas

viernes, 3 de mayo de 2013

Java: pruebas unitarias con JUnit y NetBeans

Si desarrolláis en Java seguramente hayáis utilizado algún entorno de desarrollo (o IDE) como Eclipse o NetBeans. El siguiente tutorial está centrado en el uso de JUnit en NetBeans (usamos la versión 7.0).

Las pruebas unitarias son las que realizamos sobre cada uno de los componentes que forman parte de la aplicación. Vamos a partir de una clase Java que implementa cuatro operaciones básicas de una calculadora: suma, resta, multiplicación y división. Podéis acceder al proyecto completo de este tutorial en este enlace.

Descomprimimos el proyecto y lo abrimos desde NetBeans. Para implementar las pruebas con JUnit abrimos la clase Calculando.java y seleccionamos el menú Herramientas > Crea pruebas con JUnit:


En el cuadro de diálogo siguiente elegimos JUnit 4.x


En el diálogo siguiente mantenemos las opciones por defecto y aceptamos:


Ahora podemos acceder a la clase "CalculandoTest" creada en el paquete "Paquetes de prueba":



Éste método que vemos en la imagen superior es un prototipo (tiene los valores establecidos a cero y una función "fail()" que lanza un fallo en el método. Si ejecutáramos la prueba (ejecutando la clase, con Alt + F6 o con el menú contextual sobre el menú del proyecto > Probar) se produciría el siguiente resultado:


Falla porque debemos implementar los valores de los parámetros y el resultado previsto (cada uno de los casos de prueba) para cada método probado. Podemos implementar los casos de prueba estableciendo los valores de entrada, el valor esperado de cada operación y comentando (o eliminando) la llamada a la función fail(). Os mostramos un ejemplo con el método testMultiply():


Una vez establecidos todos los casos de prueba (valores para todos los métodos) ejecutamos de nuevo las pruebas (menú contextual > Probar sobre el proyecto, ejecutar la clase test o con Alt + F6):


Como vemos si las pruebas son satisfactorias aparecerá como la imagen superior. Podéis encontrar el código de la clase de ejemplo y de test en el proyecto en el enlace del primer párrafo:

https://mega.co.nz/#!MwhBGKBL!HEIxk12AZIYs8XgZUNWXqjEL1qNts6SRK3FZXz59Qd8

Recomendaciones de Alcasoft