Tests Spring (WebTestClient/JUnit)
Écrivez des tests légers pour les contrôleurs avec WebTestClient et découvrez les bases de JUnit.
Tests Spring (WebTestClient/JUnit) est une leçon Java Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 3. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Java Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Java Academy comprend 3 leçons au total.
Introduction
Objectif : comprendre les bases de JUnit et la manière dont WebTestClient appelle vos contrôleurs au moyen de requêtes HTTP dans les tests.
Les éléments essentiels de JUnit
JUnit fournit des assertions et des méthodes de test. Dans Spring Boot, vous exécutez les tests avec SpringExtension ou @SpringBootTest.
Code : principe d'une assertion
Les tests comparent la valeur attendue à la valeur réelle et signalent clairement les résultats ; JUnit automatise ce principe.
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");
}
}
Présentation de WebTestClient
WebTestClient envoie des requêtes HTTP à votre contrôleur dans les tests et vérifie le statut, les en-têtes et le corps.
Code : flux requête → vérification
Les tests réels utilisent WebTestClient plutôt que cette simulation, mais le flux est similaire : requête → gestionnaire → vérification.
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 : vérification du chemin d'erreur
Avec WebTestClient, vous vérifieriez les codes de statut et l'éventuelle charge utile d'erreur.
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);
}
}
}
Vérification de WebTestClient
Vérification rapide : dans quel but WebTestClient est-il couramment utilisé ?
Récapitulatif
Récapitulatif : JUnit = assertions et méthodes de test. WebTestClient = tests HTTP pour les contrôleurs. Vérifiez clairement le statut et le corps.
Questions Fréquemment Posées
La leçon « Tests Spring (WebTestClient/JUnit) » est-elle gratuite ?
Oui — le texte complet de « Tests Spring (WebTestClient/JUnit) » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Java Academy, passe à CoddyKit PRO. Le cours Java Academy comprend 3 leçons au total.
Qu'est-ce que j'apprendrai dans « Tests Spring (WebTestClient/JUnit) » ?
Écrivez des tests légers pour les contrôleurs avec WebTestClient et découvrez les bases de JUnit. Tu pratiques Java Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Java Academy ?
Aucune expérience préalable n'est requise. Java Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 3.
Combien de temps prend la leçon « Tests Spring (WebTestClient/JUnit) » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Java Academy ?
Oui. Chaque leçon Java Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Tests Spring (WebTestClient/JUnit)
- Configuration et profils
- Empaquetage et exécution