> Tech > Test

Test

Tech - Par iTPro - Publié le 24 juin 2010
email

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 gratuitement cette ressource

Endpoint Security : Guide de Mise en œuvre

Endpoint Security : Guide de Mise en œuvre

Détournement d’applications légitimes, élévation de privilèges, logiciels malveillants furtifs : comment les solutions de Endpoint Security permettent elles de faire face aux nouvelles techniques d'attaques complexes ? Découvrez, dans ce Guide Endpoint Security, les perspectives associées à leur mise en œuvre.

Tech - Par iTPro - Publié le 24 juin 2010