Spring testen (WebTestClient/JUnit)
Schreiben Sie schlanke Tests für Controller mit WebTestClient und den Grundlagen von JUnit.
Spring testen (WebTestClient/JUnit) ist eine kostenlose Java Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 3. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Java Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Java Academy-Kurs umfasst insgesamt 3 Lektionen.
Einführung
Ziel: Sie verstehen die Grundlagen von JUnit und wie WebTestClient Ihre Controller in Tests mit HTTP-Aufrufen anspricht.
JUnit-Grundlagen
JUnit stellt Assertions und Testmethoden bereit. In Spring Boot führen Sie Tests mit SpringExtension oder @SpringBootTest aus.
Code: Idee hinter Assertions
Tests vergleichen erwartete und tatsächliche Werte und liefern eindeutige Ergebnisse; JUnit automatisiert dieses Prinzip.
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");
}
}
WebTestClient im Überblick
WebTestClient sendet in Tests HTTP-Anfragen an Ihren Controller und überprüft Status, Header und Body.
Code: Ablauf von Anfrage und Überprüfung
In echten Tests verwenden Sie WebTestClient statt dieses Mocks, aber der Ablauf ist ähnlich: Anfrage → Handler → Überprüfung.
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");
}
}
}
Code: Fehlerpfad überprüfen
Mit WebTestClient würden Sie Statuscodes und optional die Fehler-Payload überprüfen.
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);
}
}
}
WebTestClient überprüfen
Kurztest: Wofür wird WebTestClient üblicherweise verwendet?
Zusammenfassung
Zusammenfassung: JUnit = Assertions und Testmethoden. WebTestClient = HTTP-Tests für Controller. Überprüfen Sie Status und Body eindeutig.
Häufig gestellte Fragen
Ist die Lektion „Spring testen (WebTestClient/JUnit)“ kostenlos?
Ja — der vollständige Text von „Spring testen (WebTestClient/JUnit)“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Java Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Java Academy-Kurs umfasst insgesamt 3 Lektionen.
Was lerne ich in „Spring testen (WebTestClient/JUnit)“?
Schreiben Sie schlanke Tests für Controller mit WebTestClient und den Grundlagen von JUnit. Du übst Java Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Java Academy zu starten?
Keine Vorkenntnisse erforderlich. Java Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 3.
Wie lange dauert die Lektion „Spring testen (WebTestClient/JUnit)“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Java Academy-Lektion Code schreiben und ausführen?
Ja. Jede Java Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Spring testen (WebTestClient/JUnit)
- Konfiguration und Profile
- Paketieren und Ausführen