Test con JUnit

Cuando se hacen desarrollo profesionales, no basta con hacer los programas, hay que asegurarse de que van a funcionar. Una de las técnicas más seguras es crear aplicaciones que incluyan el código para autoprobarse. Os mostramos como usar JUnit

JUnit: Pruebas unitarias en Java

Cuando realizados desarrollos profesionales, debemos tener en cuenta que no
solo hay que ejecutar el proyecto… hay que ejecutarlo bien.

Un proyecto no esta terminado hasta que esta en producción, tiene su
documentación y dispone de las garantias adecuadas de que va a funcionar en
todos los escenarios posibles.

Además, normalmente, se desarrolla en un entorno, se empaqueta y
posteriormente se entrega a un equipo de calidad para que lo pruebe y lo pase a
otro (pre-producción y producción).

Todo esto hay que tenerlo en cuenta  a la hora de dimensionar, diseñar
y ejecutar un proyecto.

Del mismo modo, tambien debemos tener en cuenta que no lo podemos hacer de un
modo distinto en cada proyecto. Hemos de utilizar mecanismos estandares y
ampliables simpre que se pueda.

Otro punto que cabe recordar (y que muchas veces se olvida) es que la
tecnología es y debe ser un medio para que nuestros clientes consigan objetivos
empresariales y el puritanismo tecnológico a nuestro cliente normalmente le dá
igual ….  tenemos que alcanzar un equilibrio entre calidad y resultados
….

Digo esto porque seguro que alguien descubre como hacer test unitarios
y se le ocurre que a partir de ahora todo el sistema tenga test unitarios
(economicamente no es muy viable …. tenemos que usar el sentido común)

 

Lo primero que vamos a hacer es decargarnoslo, y descomprimirlo.

Luego tenemos que asegurarnos de poner en la variable de entorno classpath junit.jar

Ahora ejecutamos el comando de prueva

java junit.swingui.TestRunner junit.samples.AllTests

Y comprobamos el resultado:

Si no os a funcionado ….. seguro que es un problema de classpath ….

Bueno, ya esta configurado el entorno …. ahora vamos a centrarnos en los
principios de los Test Unitarios y como aplicarlo a nuestros programas.

Hacemos un prográma mínimo para que funcionen nuestro propios tests y vemos
los requerimientos básicos …

import junit.framework.*;

public class pruebas extends TestCase
{
   pruebas(String tituloTest)
   {
        super(tituloTest);
   }

    protected void runTest()
    {
        int i = 0;
        this.assertTrue("Valor Igual a 3",i==3);
    }

    public static Test suite()
    {
        TestSuite suite= new TestSuite("Pruebas de clase pruebas");
        suite.addTest(new pruebas("Clase principal"));
        return suite;
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
         // nuestro programa hace lo que deseemos
    }
}

    

 

Para que una clase sea invocable desde JUnit, tenemos que hacer de derive de junit.framework.TestCase

Nuestro test, debe redefinir el método protected void runTest()

Dentro de este método … haremos llamadas a los métodos de verificación
com assertTrue(«Valor Igual a
3»,i==3);

Para que podamos invocar desde una herramienta gráfica los test, debemos
redefinir el método public static Test suite()

Y dentro de este método, añadiremos todos los test que deseemos addTest(new
pruebas(«Clase principal»));

Bueno … compilamos y vemos que pasa …

 

Vemos la otra lengueta …

Bueno … seguro que el ejemplo no os a parecido demasiado claro … asi que
vamos a hacer unos pocos más …

Supongamos que una de nuestras clases se encarga de leer los parámetros de
un fichero … y queremos asegurarnos que cuando pasemos entre entornos ese
fichero esté

import junit.framework.*;
import java.io.*;

public class leerPropiedades  extends TestCase
{
    String nombreFichero="parametros.ini";

     public leerPropiedades(String nombreTest)
    {
        super(nombreTest);
    }

    protected void runTest()
    {
        try
        {
            File fichero = new File(nombreFichero);
            this.assertTrue("Podemos Leer",fichero.canRead());
        }
        catch(Exception e)
        {
            this.fail("Fallo al identificar Fichero " + nombreFichero);
        }
   }

    public static Test suite()
    {
        TestSuite suite= new TestSuite("Manipulación de propiedades");
        suite.addTest(new leerPropiedades("Existe el Fichero"));
        return suite;
    }

    public static void main(String[] args) {
    }
}

    

El resultado si el fichero no existe o no tenemos privilegios sería

Si el fichero existe … la salida sería

 

Lo vamos a dejar de momento aquí .. en próximas entregas expondremos técnicas más avanzadas ….

Sobre el
Autor ..

Comentarios

Un comentario

  1. Muy Bueno, en la Universidad Nacional del Nordeste(UNNE, Corrientes Argentina) , en la Materia Programacion Orientada a Objetos estamos dando a conocer el tema. Mi Compañero y yo estamos trabajando en Junit hasta el momento esta muy bueno el tema y tanto profesores como alumnos se mostraronm interesados. Nosotros somos Ayudante Alumno de la Catedra. Desde ya Gracias por tu aporte

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

He leído y acepto la política de privacidad

Información básica acerca de la protección de datos

  • Responsable: IZERTIS S.A.
  • Finalidad: Envío información de carácter administrativa, técnica, organizativa y/o comercial sobre los productos y servicios sobre los que se nos consulta.
  • Legitimación: Consentimiento del interesado
  • Destinatarios: Otras empresas del Grupo IZERTIS. Encargados del tratamiento.
  • Derechos: Acceso, rectificación, supresión, cancelación, limitación y portabilidad de los datos.
  • Más información: Puedes ampliar información acerca de la protección de datos en el siguiente enlace:política de privacidad

Creador y propietario de AdictosAlTrabajo.com, Director General de Autentia S.L., Profesor asociado en IE Business School, inversor en StartUps y mentor de emprendedores. Ingeniero Técnico de Telecomunicaciones y Executive MBA por IE Business School 2007. Twitter: Follow @rcanalesmora Autor de los Libros: Planifica tu éxito: de aprendiz a empresario, Informática profesional, las reglas no escritas para triunfar en la empresa, Conceptos ágiles aplicados a distintas áreas de una empresa y Conversaciones con CEOs y CIOs sobre Transformación Digital y Metodologías Ágiles. ¡Descárgalos gratis aquí! Puedes consultar mi CV y alguna de mis primeras aplicaciones (de los 90) aquí.

¿Quieres publicar en Adictos al trabajo?

Te puede interesar

16/02/2026

Daniel Rosique Evangelista

Seguir ejecutando aplicaciones web sobre versiones obsoletas de PHP no es solo una decisión técnica cuestionable, sino un riesgo real para la seguridad, el rendimiento y la sostenibilidad del proyecto. PHP 8 supone un punto de inflexión que conviene abordar cuanto antes.
Imagen con fondo abstracto azul y el texto “Adictos al Trabajo” centrado.

11/02/2026

Rubén Gavilán Fernández

El autoescalado de runners en GitLab CI permite adaptar dinámicamente la capacidad de ejecución de los pipelines a la carga real de trabajo. En este artículo analizamos la arquitectura del Docker Autoscaler executor y mostramos un ejemplo práctico de autoescalado sobre AWS, optimizando rendimiento, costes y operativa DevOps.

30/10/2025

Benjamín Suárez Menéndez

El Complex Problem Solving (CPS) es un proceso estructurado basado en herramientas, técnicas y actitudes que nos facilita la resolución de problemas complejos.