Cómo configurar y crear tests de JUnit 5 en IntelliJ IDEA

Es posible utilizar JUnit 5 en IntelliJ IDEA. Además de las opciones de Maven y Gradle, que son las que te pueden proporcionar una forma más neutra y portable de mantener la suite de tests de tu programa, IntelliJ IDEA es compatible con JUnit dentro de sus proyectos propios. En este vídeo te cuento cómo puedes agregar una carpeta de tests a tu proyecto de IntelliJ IDEA y cómo puedes crear un test para una clase de código Java.

Cuando trabajamos con proyectos en IntelliJ IDEA sin utilizar herramientas de construcción como Maven o Gradle, configurar y ejecutar tests con JUnit 5 puede parecer un poco más laborioso, pero es totalmente posible y bastante directo si seguimos algunos pasos clave.

Primero, al crear un proyecto puro en IntelliJ, notaremos que solo se genera la carpeta src para el código fuente, pero no existe una carpeta específica para los tests. Esto puede ser un problema porque IntelliJ espera que los tests estén organizados en un directorio separado para gestionarlos correctamente. Por eso, lo primero que debemos hacer es crear manualmente un directorio para los tests. Simplemente hacemos clic derecho en el panel del proyecto, creamos un nuevo directorio llamado test y luego lo marcamos como Test Sources Root. Esto hará que IntelliJ reconozca esa carpeta como el lugar destinado para los tests y la coloreará de verde para indicarlo.

Con la estructura lista, podemos pasar a crear los tests. Una forma sencilla es partir de la clase que queremos probar, por ejemplo, una clase llamada Rectángulo. Desde esa clase, IntelliJ nos ofrece una opción muy práctica: al hacer clic en la bombilla de sugerencias, podemos seleccionar Create Test. Esto abre un asistente donde podemos nombrar la clase de test, por ejemplo RectánguloTest, y elegir qué métodos de test queremos generar automáticamente.

Un punto importante en este proceso es asegurarnos de que JUnit 5 esté disponible en el proyecto. Si IntelliJ nos indica que JUnit 5 no está en el módulo, debemos usar el botón de Fix que aparece en el asistente para que descargue e incorpore la dependencia necesaria al classpath del proyecto. Esto es fundamental para que los tests puedan compilar y ejecutarse correctamente.

Una vez creado el test, podemos escribir los métodos que validen el comportamiento de nuestra clase. Por ejemplo, si tenemos un método que calcula el área del rectángulo, podemos crear un test que verifique que el resultado sea el esperado. El código de un test básico en JUnit 5 podría ser algo así:

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

public class RectánguloTest {

    @Test
    void testCalcularArea() {
        Rectángulo rect = new Rectángulo(5, 10);
        assertEquals(50, rect.calcularArea());
    }
}

Para ejecutar los tests, IntelliJ facilita mucho la tarea. Podemos abrir el archivo de test y pulsar el botón de Run que aparece junto a la declaración de la clase o de cada método de test. Esto ejecutará solo ese test y nos mostrará en un panel los resultados, indicando si cada método pasó o falló. Si un test falla, aparecerá en rojo, y si pasa, en verde.

Si queremos ejecutar todos los tests del proyecto, basta con hacer clic derecho sobre el nombre del proyecto en el panel lateral y seleccionar Run 'All Tests'. Esto lanzará todos los tests que estén dentro de la carpeta marcada como test sources, sin importar cuántas clases de test tengamos.

Aunque esta forma de configurar tests sin Maven ni Gradle es funcional, para proyectos más grandes o con necesidades más complejas es recomendable usar alguna herramienta de construcción que facilite la gestión de dependencias y la ejecución de tests. Sin embargo, para proyectos pequeños o para salir del paso rápidamente, esta configuración manual en IntelliJ es una solución válida y efectiva.

Lista de reproducción
  1. 1
    ¿Qué es una prueba unitaria? ¿Me vale con crear un main?
    7 minutos
  2. 2
    Cómo crear tests unitarios con JUnit 5
    17 minutos
  3. 3
    Cómo usar BeforeEach, AfterEach, BeforeAll y AfterAll en JUnit 5
    11 minutos
  4. 4
    Cómo cambiar el orden de los tests de JUnit 5 (aunque no deberías)
    8 minutos
  5. 5
    Cómo aprovechar la clase Assertions de JUnit 5
    8 minutos
  6. 6
    Cómo ejecutar tests condicionalmente en JUnit 5
    7 minutos
  7. 7
    Cómo hacer tests de excepciones en JUnit 5 con assertThrows
    5 minutos
  8. 8
    Cómo crear Nested tests en JUnit 5 (un test dentro de otro)
    5 minutos
  9. 9
    Cómo configurar y crear tests de JUnit 5 en NetBeans
    6 minutos
  10. 10
    Cómo configurar y crear tests de JUnit 5 en Eclipse
    5 minutos
  11. 11
    Cómo configurar y crear tests de JUnit 5 en IntelliJ IDEA
    4 minutos