Le test est une seconde nature pour un programmeur, comme le souligne « JUnit Test Infected : Programmers Love Writing Tests » (junit.sourceforge. net/doc/testinfected/testing.htm). La devise d’un programmeur obnubilé par les tests est « tester d’abord, coder ensuite ». Il faut commencer à utiliser des fonctions de test d’unité dès
Test
le début de l’application. Certains des frameworks de test les plus connus sont JUnit, DbUnit, jMock et HttpUnit. Créer des tests d’unité avec JUnit devrait être un standard pour tout développement Java. WDSc fournit des assistants JUnit qui facilitent l’écriture et l’exécution de tests d’unité.
DbUnit (www.dbunit.org) est une extension JUnit qui permet de mettre facilement une base de données dans un état connu avant de conduire vos tests JUnit. JMock (jmock.org), une autre extension JUnit, crée des objets qui imitent la fonctionnalité d’une API Java. Avec JMock, vous pouvez tester un niveau de votre application et imiter (ou simuler) l’implémentation des autres niveaux. Ainsi vous pouvez découpler les niveaux multiples de votre application Web pendant le test. Ce faisant, vous pouvez détecter le code défectueux beaucoup plus facilement et coder le test avant de mettre en oeuvre d’autres modules.
Le conteneur Spring fournit de nombreuses extensions très utiles à JMock, avec des classes qui imitent l’API Servlet. Ces classes sont extrêmement utiles parce qu’elles vous permettent d’automatiser les tests de code au niveau Web sans un navigateur Web et un serveur d’applications Web. HttpUnit (httpunit.sourceforge.net) vous permet d’automatiser le test de votre code au niveau Web pour vérifier le comportement du code JavaScript et du navigateur. J’écris des tests JUnit pour la plupart de mes classes de gestion. Je commence à peine à utiliser DbUnit (je ne perds pas de temps à répliquer des données avant d’exécuter mes tests d’unité, bien que vous puissiez faire la même chose avec des scripts SQL).
J’utilise parfois JMock pour détacher la logique de gestion afin d’isoler des tests à certains modules. J’utilise les objets mock de Spring en permanence pour tester le code serveur dont je me méfie. Quand mon code échoue, ma première action est de modifier les tests d’unités pour que la défaillance se produise dans un environnement de test. Ensuite, je modifie le code de façon itérative et j’exécute le test d’unité amélioré jusqu’à ce qu’il prouve que la correction a produit ses effets. J’utilise HttpUnit quand je ne peux pas pratiquer le test d’unité sur le code serveur, comme quand je travaille avec Struts 1 ou avec un MVC maison.
Téléchargez cette ressource
Mac en entreprise : le levier d’un poste de travail moderne
Ce livre blanc répond aux 9 questions clés des entreprises sur l’intégration du Mac : sécurité, compatibilité, gestion, productivité, coûts, attractivité talents, RSE et IA, et l’accompagnement sur mesure proposé par inmac wstore.
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Data streaming : le nouveau socle stratégique de l’IA en entreprise
- Ransomware en santé : la double extorsion fait exploser la facture en Europe
- Les fuites de données explosent en France, désormais pays le plus touché d’Europe
- L’IA accélère les attaques et expose les identités non gouvernées
Articles les + lus
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
À la une de la chaîne Tech
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
