Pruebas de Java desde cero: hoja de ruta para principiantes

Entrenador de Python en Línea para Principiantes

Aprende Python fácilmente sin sobrecargarte de teoría. Resuelve tareas prácticas con verificación automática, recibe pistas y escribe código directamente en el navegador, sin instalar nada.

Start Course

«El código sin pruebas es legacy»: por qué deberías empezar hoy mismo

\n\n

Imagina: has escrito una aplicación en Java. Funciona. Pero tienes miedo de cambiar algo, porque un movimiento en falso y todo se derrumbará. ¿Te suena familiar? Bienvenido al mundo donde las pruebas de Java no son un capricho, sino una habilidad de supervivencia.

\n\n

Muchos desarrolladores principiantes posponen las pruebas «para después». Dicen: primero aprenderé a escribir código, luego lo resolveré. Pero la verdad es que las pruebas unitarias en Java no son una carga adicional, sino tu red de seguridad. Te obligan a escribir código de mayor calidad, más modular y comprensible. Y sí, los empleadores valoran mucho a los desarrolladores que saben cubrir su código con pruebas.

\n\n

En este artículo, analizaremos por dónde empezar con las pruebas de Java para principiantes. Conocerás las herramientas principales — JUnit y Mockito, escribirás tus primeras pruebas y entenderás cómo no caer en «probar por probar». ¡Allá vamos!

\n\n

Paso 1: Configuración del entorno — tu primer banco de pruebas

\n\n

Antes de escribir pruebas, debes preparar el entorno. La buena noticia: para la automatización de pruebas en Java no necesitas nada extraordinario. Todo lo que ya tienes — JDK y un IDE (IntelliJ IDEA o Eclipse) — es suficiente.

\n\n

Maven o Gradle — elige el gestor de construcción

\n\n

Los proyectos Java modernos rara vez prescinden de un sistema de construcción. Usaremos Maven — es el estándar de facto para la mayoría de los proyectos. Aquí tienes un pom.xml mínimo con dependencias para pruebas:

\n\n
<dependencies>\n    <!-- JUnit 5 — framework principal para pruebas -->\n    <dependency>\n        <groupId>org.junit.jupiter</groupId>\n        <artifactId>junit-jupiter-api</artifactId>\n        <version>5.10.0</version>\n        <scope>test</scope>\n    </dependency>\n    \n    <!-- Mockito para crear objetos mock -->\n    <dependency>\n        <groupId>org.mockito</groupId>\n        <artifactId>mockito-core</artifactId>\n        <version>5.6.0</version>\n        <scope>test</scope>\n    </dependency>\n</dependencies>
\n\n

Observa el <scope>test</scope> — estas bibliotecas no se incluirán en la compilación final de la aplicación, solo son necesarias para ejecutar las pruebas.

\n\n

Paso 2: JUnit — tu primera prueba real

\n\n

JUnit es la base sobre la que se construyen todas las pruebas en Java. Con él escribes pruebas unitarias: verificas el funcionamiento de un método o clase de forma aislada.

\n\n

Escribimos la primera prueba

\n\n

Supongamos que tenemos una calculadora simple:

\n\n
public class Calculator {\n    public int add(int a, int b) {\n        return a + b;\n    }\n    \n    public int divide(int a, int b) {\n        if (b == 0) {\n            throw new IllegalArgumentException("¡No se puede dividir por cero!");\n        }\n        return a / b;\n    }\n}
\n\n

Ahora escribamos una prueba para ella. Crea una clase en la carpeta src/test/java:

\n\n
import org.junit.jupiter.api.Test;\nimport static org.junit.jupiter.api.Assertions.*;\n\nclass CalculatorTest {\n    \n    private final Calculator calculator = new Calculator();\n    \n    @Test\n    void testAdd() {\n        // Arrange (preparación)\n        int a = 2;\n        int b = 3;\n        \n        // Act (acción)\n        int result = calculator.add(a, b);\n        \n        // Assert (verificación)\n        assertEquals(5, result, "2 + 3 debería ser igual a 5");\n    }\n    \n    @Test\n    void testDivideByZero() {\n        // Verificamos que el método lanza una excepción\n        assertThrows(IllegalArgumentException.class, \n            () -> calculator.divide(10, 0));\n    }\n}
\n\n

Ejecuta la prueba — la barra verde en el IDE te dirá que todo funciona. Felicidades, acabas de dar el primer paso en unit testing Java.

Blogs

Book Recommendations