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

8 comentarios:

  1. viejo necesito el archivo de mega profavor

    ResponderEliminar
    Respuestas
    1. Hola Cristian, gracias por avisar del enlace roto. Acabo de repararlo y tienes el proyecto aquí: https://mega.co.nz/#!hxAyyQTK!sGWJT5kHKgbFsoDAS3TaFE4lRZD7LiYQhlVKHlnW6Ro

      Un saludo

      Eliminar
  2. Una pregunta, como instalaste el junit en netbeans, o viene por defecto?

    ResponderEliminar
    Respuestas
    1. Hola Andy. Hace ya un par de años del post, creo recordar que lo instalé como plugin de Netbeans. Netbeans es un IDE modular que tiene muchas ampliaciones en forma de plugins y componentes. Puedes instalarlo desde el menú correspondiente en Herramientas. Un saludo

      Eliminar
  3. Muchas gracias Noé ! soy fanático del testing y tu instrucción me fue muy útil :) Eduardo Riveros Quiroz

    ResponderEliminar
  4. hola,
    falta el paquete de prueba en el proyecto descargable.

    ResponderEliminar
    Respuestas
    1. Hola! Tienes razón, el segundo enlace está roto y no he encontrado dónde lo guardé. En cualquier caso el primer enlace al proyecto de prueba está disponible. Un saludo

      Eliminar

Recomendaciones de Alcasoft