Introducción a JUnit 5 e instalación

Básico
JUnit
JUnit
Hoy: 27/09/2025

Introducción a JUnit

JUnit es un framework de pruebas unitarias para Java que proporciona un conjunto de API y herramientas para facilitar el proceso de prueba de código. Una prueba unitaria es un tipo de prueba de software que verifica la funcionalidad de una porción específica del código, generalmente a nivel de funciones o métodos individuales, en un aislamiento del resto del sistema. Se utiliza para asegurarse de que cada componente del software funcione correctamente de manera independiente. Las pruebas unitarias son fundamentales en metodologías de desarrollo ágil y en la integración continua, donde cada cambio en el código se verifica automáticamente para evitar la introducción de errores.

El uso de JUnit en el desarrollo de Java proporciona múltiples beneficios, incluyendo la capacidad de detectar y corregir errores con rapidez, mejorar la calidad del código, y reducir el tiempo y los costos asociados con el mantenimiento de software a largo plazo. Además, JUnit fomenta un diseño de código más modular y una arquitectura más clara, ya que los desarrolladores tienden a diseñar su código de manera que sea más testeable.

JUnit 5, en particular, introduce varias mejoras y nuevas funcionalidades en comparación con sus predecesores, como un modelo de ejecución más flexible y soporte para la ejecución de pruebas en paralelo, lo que puede acelerar significativamente el proceso de pruebas en proyectos grandes. También es notable su capacidad para extenderse mediante el uso de extensiones.

Instalación

Instalación con Maven

Para instalar JUnit 5 en un proyecto que utiliza Maven, necesitas modificar el archivo pom.xml para incluir las dependencias necesarias. JUnit 5 se compone de varios módulos, pero principalmente necesitarás las dependencias para:

  • API de JUnit Jupiter (junit-jupiter-api): Es la API que contiene las anotaciones y clases que se usan directamente en el código de pruebas, como @Test, @BeforeEach, @AfterEach, etc.
  • Motor de JUnit Jupiter (junit-jupiter-engine): Es el motor de ejecución que permite a la plataforma JUnit ejecutar pruebas escritas con la API de JUnit Jupiter. Sin esta dependencia, no podrías ejecutar las pruebas que has escrito utilizando la API de JUnit Jupiter.

Para usar JUnit 5, añade las siguientes dependencias dentro en la sección <dependencies> de tu pom.xml:

<dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter-api</artifactId>
    <version>5.10.0</version>
    <scope>test</scope>
</dependency>

<dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter-engine</artifactId>
    <version>5.10.0</version>
    <scope>test</scope>
</dependency>

Dependencias JUnit en pom.xml

Asegúrate de utilizar la última versión disponible de JUnit 5 para obtener las últimas mejoras y correcciones, que puedes encontrar en:

https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api
https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-engine

Instalación con Gradle

Para proyectos que utilizan Gradle, el proceso es similar pero adaptado al DSL de Gradle:

En el archivo build.gradle, debes añadir las dependencias en la sección dependencies:

testImplementation('org.junit.jupiter:junit-jupiter-api:5.9.0')
testRuntimeOnly('org.junit.jupiter:junit-jupiter-engine:5.9.0')

Al igual que con Maven, verifica que estés utilizando las últimas versiones de las dependencias.

Asegúrate de que Gradle esté configurado para usar JUnit 5 agregando lo siguiente en tu archivo build.gradle:

test {
    useJUnitPlatform()
}

Esto permite que Gradle reconozca y ejecute las pruebas que usan la plataforma JUnit 5.

Configuración en IntelliJ IDEA

Utilizar un IDE es la forma más sencilla y directa de configurar y utilizar JUnit, ya que muchos de ellos ofrecen herramientas integradas para gestionar dependencias, escribir, ejecutar y depurar pruebas unitarias de manera eficiente. Algunos IDEs compatibles incluyen IntelliJ IDEA, Eclipse, NetBeans, Visual Studio Code o JDeveloper.

Por ejemplo, IntelliJ IDEA proporciona un soporte excelente para JUnit, y configurar JUnit 5 es directo. Si ya tienes un proyecto con las dependencias de JUnit 5 en el pom.xml o en el build.gradle como se explicó anteriormente, IntelliJ automáticamente reconoce JUnit 5 y configura el entorno de pruebas para usarlo. No necesitas realizar pasos adicionales. En el caso de Maven, si no reconociera las versiones en el pom.xml, puede solucionarse recargando el proyecto Maven (click derecho sobre el archivo pom.xml, y entonces Maven > Reload project).

Prueba

En un proyecto Maven o Gradle, los archivos de test típicamente se sitúan en un directorio separado del código fuente principal para mantener una clara distinción entre el código de producción y el código de prueba. Esta estructura no solo ayuda a organizar mejor el código, sino que también facilita la configuración de herramientas de construcción y pruebas.

Los archivos de test suelen ubicarse en src/test/java/. Dentro de este directorio se colocan los archivos de test (que son archivos .java ordinarios), organizados generalmente en paquetes que reflejan la estructura de los paquetes en src/main/java/.

Un ejemplo simple de test utilizando JUnit 5 sería, en un archivo HolaMundoTest.java:

import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;

class HolaMundoTest {

    @Test
    void pruebaHolaMundo() {
        String mensaje = "¡Hola, mundo!";
        assertEquals("¡Hola, mundo!", mensaje);
    }
}

Este ejemplo demuestra cómo escribir una prueba unitaria básica utilizando JUnit 5. La anotación @Test indica que el método pruebaHolaMundo() es una prueba unitaria. Dentro del método, se realiza una aserción utilizando el método assertEquals() para verificar si un string tiene el valor esperado ("¡Hola, mundo!").

Ejecutar una prueba JUnit 5 puede hacerse de varias maneras, dependiendo del entorno de desarrollo y de la configuración del proyecto. Los IDEs populares como IntelliJ IDEA, Eclipse y NetBeans ofrecen soporte integrado para JUnit. Bastaría con localizar la clase de prueba que deseas ejecutar, y entonces utilizar el comando específico del IDE para ejecutar pruebas.

Por ejemplo, en IntelliJ IDEA puedes en el código hacer click derecho sobre el nombre de un método de prueba y seleccionar “Run” para ejecutar la prueba. También puedes hacer click derecho sobre el nombre de la clase, o sobre el propio archivo en el explorador de proyecto lateral, para ejecutar todas las pruebas que existan en una clase o en un paquete. IntelliJ gestiona la ejecución y te muestra los resultados en una ventana dedicada.

Ejecutar test mediante IDE

Alternativamente, en lugar de utilizar el IDE, puedes ejecutar las pruebas directamente desde la línea de comandos por Maven o Gradle.

Para ejecutar las pruebas utilizando Maven, puedes usar el siguiente comando en el directorio raíz del proyecto:

mvn test

Si estás utilizando Gradle, el comando para ejecutar las pruebas es:

./gradlew test

Estos comandos ejecutarán todas las pruebas en el proyecto que estén bajo el directorio src/test/java.

Alan Sastre - Autor del tutorial

Alan Sastre

Ingeniero de Software y formador, CEO en CertiDevs

Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, JUnit es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.

Más tutoriales de JUnit

Explora más contenido relacionado con JUnit y continúa aprendiendo con nuestros tutoriales gratuitos.

Aprendizajes de esta lección

  • Comprender cómo JUnit facilita las pruebas unitarias en proyectos de desarrollo Java y sus beneficios en la calidad del software y la eficiencia del desarrollo.
  • Aprender a configurar y utilizar JUnit 5 con herramientas de desarrollo como Maven, Gradle o IDEs.