Introducción a JUnit 5
\n\nJUnit 5 es un framework moderno para pruebas unitarias (unit testing) en el lenguaje Java. Es la evolución del popular JUnit 4 y forma parte del ecosistema Java como el estándar de facto para escribir pruebas automatizadas. JUnit 5 no es solo una actualización, sino una arquitectura completamente rediseñada que consta de tres subproyectos: JUnit Platform (ejecución de pruebas), JUnit Jupiter (nuevo modelo de programación y extensiones) y JUnit Vintage (compatibilidad inversa con JUnit 3/4).
\n\n¿Para qué sirve JUnit 5? En el desarrollo moderno (especialmente en metodologías TDD — Test-Driven Development), las pruebas no son una opción, sino una etapa obligatoria. JUnit 5 permite:
\n- \n
- Automatizar la verificación del código: Ejecutar cientos de pruebas con un solo comando. \n
- Garantizar la fiabilidad de regresión: Asegurarse de que el código nuevo no rompa la funcionalidad existente. \n
- Mejorar el diseño del código: El código testeable suele ser más modular y con menor acoplamiento. \n
- Documentar el comportamiento: Las pruebas sirven como documentación viva que muestra cómo debe funcionar una clase o método. \n
- Integrarse en CI/CD: JUnit 5 se integra fácilmente con Maven, Gradle, Jenkins, GitHub Actions. \n
Principales novedades de JUnit 5 en comparación con JUnit 4: anotaciones de nueva generación (@Test, @ParameterizedTest, @Nested), potente sistema de extensiones (Extensions), soporte para expresiones lambda y API de flujo, así como soporte integrado para pruebas parametrizadas y dinámicas.
\n\nInstalación de JUnit 5
\n\nDado que Java es un lenguaje compilado, la instalación se realiza a través de gestores de dependencias (Maven o Gradle). JUnit 5 no se instala mediante pip o npm. A continuación se presentan las instrucciones para los dos sistemas de compilación más populares.
\n\nInstalación mediante Maven (pom.xml)
\nAgregue las siguientes dependencias a su archivo pom.xml. Se recomienda usar la última versión estable (en el momento de escribir esto, la 5.11.0; verifique la versión actual en MVNRepository).
<dependencies>\n <!-- Módulo principal de JUnit Jupiter (incluye API, Engine y parametrización) -->\n <dependency>\n <groupId>org.junit.jupiter</groupId>\n <artifactId>junit-jupiter</artifactId>\n <version>5.11.0</version>\n <scope>test</scope>\n </dependency>\n <!-- (Opcional) Para compatibilidad con JUnit 4 -->\n <dependency>\n <groupId>org.junit.vintage</groupId>\n <artifactId>junit-vintage-engine</artifactId>\n <version>5.11.0</version>\n <scope>test</scope>\n </dependency>\n</dependencies>\n\nInstalación mediante Gradle (build.gradle)
\nAgregue en la sección dependencies:
dependencies {\n testImplementation 'org.junit.jupiter:junit-jupiter:5.11.0'\n // (Opcional) Para JUnit 4\n testImplementation 'org.junit.vintage:junit-vintage-engine:5.11.0'\n}\n\ntest {\n useJUnitPlatform() // Obligatorio para habilitar JUnit 5\n}\n\nInstalación sin sistema de compilación (Java plano)
\nSi no usa Maven/Gradle, descargue los archivos JAR desde el repositorio oficial y agréguelos al classpath de su proyecto. Sin embargo, esto no se recomienda en absoluto para proyectos reales.
\n\nInicio rápido: primera prueba con JUnit 5
\n\nCrearemos una clase simple Calculator y escribiremos una prueba para ella.
1. Clase a probar (Calculator.java):
\npublic class Calculator {\n public int add(int a, int b) {\n return a + b;\n }\n\n public int divide(int a, int También en la biblioteca
Generación de informes PDF en Swift para iOS y macOS con PDFKit y Core Graphics
Validación de datos en PHP: guía completa con ejemplos de código
gRPC para C++: bibliotecas, ejemplos y guía de uso
Criptografía en Swift: cifrado y hash para iOS/macOS