Pruebas de Spring (WebTestClient/JUnit)
Escriba pruebas ligeras para controladores usando WebTestClient y los fundamentos de JUnit.
Pruebas de Spring (WebTestClient/JUnit) es una lección gratuita de Java Academy en CoddyKit. Esta es la lección 1 de 3. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Java Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Java Academy incluye 3 lecciones en total.
Introducción
Objetivo: comprender los fundamentos de JUnit y cómo WebTestClient realiza llamadas HTTP a sus controladores en las pruebas.
Fundamentos de JUnit
JUnit proporciona aserciones y métodos de prueba. En Spring Boot, las pruebas se ejecutan con SpringExtension o @SpringBootTest.
Código: idea de las aserciones
Las pruebas comparan el valor esperado con el valor real e informan de resultados claros; JUnit automatiza esta idea.
public class Main {
// Simple, runnable demo of assertion-like checks (not JUnit), prints PASS/FAIL.
static void assertEquals(int expected, int actual, String name) {
if (expected == actual) {
System.out.println(name + ": PASS");
} else {
System.out.println(name + ": FAIL expected " + expected + " but was " + actual);
}
}
public static void main(String[] args) {
// Pretend we test a controller method that adds numbers.
int sum = 2 + 3; // pretend controller result
assertEquals(5, sum, "addsTwoNumbers");
}
}
Descripción general de WebTestClient
WebTestClient envía solicitudes HTTP a su controlador durante las pruebas y comprueba el estado, las cabeceras y el cuerpo.
Código: flujo de solicitud→verificación
En las pruebas reales se utiliza WebTestClient en lugar de este mock, pero el flujo es similar: solicitud → controlador → verificación.
public class Main {
// Simulate an HTTP test: build request, call handler, verify response.
static String handleHello(String path) {
// pretend controller:
if ("/hello".equals(path)) return "Hello";
return "404";
}
public static void main(String[] args) {
String response = handleHello("/hello");
if ("Hello".equals(response)) {
System.out.println("GET /hello -> 200 OK, body=Hello (PASS)");
} else {
System.out.println("GET /hello -> FAIL");
}
}
}
Código: verificar la ruta de error
Con WebTestClient, se comprobarían los códigos de estado y la carga útil del error opcional.
public class Main {
// Simulate verifying error responses.
static int deleteUser(long id) {
// pretend service: only id 1 exists
if (id == 1L) return 204; // No Content
return 404; // Not Found
}
public static void main(String[] args) {
int status = deleteUser(99L); // should be 404 in our scenario
if (status == 404) {
System.out.println("DELETE /users/99 -> 404 (PASS)");
} else {
System.out.println("DELETE /users/99 -> FAIL got " + status);
}
}
}
Comprobación de WebTestClient
Comprobación rápida: ¿Para qué se utiliza habitualmente WebTestClient?
Resumen
Resumen: JUnit = aserciones y métodos de prueba. WebTestClient = pruebas HTTP para controladores. Verifique claramente el estado y el cuerpo.
Preguntas frecuentes
¿La lección «Pruebas de Spring (WebTestClient/JUnit)» es gratis?
Sí — el texto completo de «Pruebas de Spring (WebTestClient/JUnit)» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Java Academy, actualiza a CoddyKit PRO. El curso de Java Academy incluye 3 lecciones en total.
¿Qué aprenderé en «Pruebas de Spring (WebTestClient/JUnit)»?
Escriba pruebas ligeras para controladores usando WebTestClient y los fundamentos de JUnit. Practicas Java Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Java Academy?
No se requiere experiencia previa. Java Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 3.
¿Cuánto tiempo toma la lección «Pruebas de Spring (WebTestClient/JUnit)»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Java Academy?
Sí. Cada lección de Java Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Pruebas de Spring (WebTestClient/JUnit)
- Configuración y perfiles
- Empaquetado y ejecución