|
PRÉSENTATION DES TESTS UNITAIRES
Définition et objectifsObjectifs, intérêts et enjeux des tests unitaires. Positionnement des tests unitaires dans l'univers des tests applicatifs.
Méthodologie XP, Test Driven Development & Test FirstPrésentation d'une méthodologie agile : l'eXtreme Programming. Présentation de la méthode Test First, principe de base des tests unitaires.
L'IMPACT SUR LE DESIGNLa méthodologie « tests unitaires » impose le respect de certaines règles dans l'écriture des classes applicatives.
Présentation des règles et avantages.
Les enjeux du Design
Principe de Liskow sur l'héritage
Principe de l'inversion de contrôle« Utilisons des interfaces ! », injection de dépendances.
ÉCRIRE UN TEST UNITAIRE
Présentation du Framework JUnitHistorique et présentation générale. Structure d'une classe de test : présentation de la classe TestCase, constructeur, création du contexte de test, méthodes de test, autonomie des méthodes de test.
Apport de JUNIT 4Travaux pratiques : premier test avec JUnit.
Autres frameworkDBUnit, TestNG, Outil de mesure de couverture du code testé (code coverage). Travaux pratiques avec DBUnit.
Préconisation sur l'organisation des sources
|
·
Méthodologie de testComment écrire des tests dits « gagnants » ? Faut-il chercher à tout tester unitairement ? Assertion simple, test de méthodes sans valeur de retour, test d'un domaine de validité, test des exceptions. Travaux pratiques : exercices portant sur chacune des méthodes de tests.
Self-ShuntPrésentation de la méthode, intérêts, inconvénients.
Mock-ObjectPrésentation de la méthode, intérêts, inconvénients, services rendus, contrôle des mock-objects et simulation de comportement. Comment utiliser les implémentations postiches ? Injection des implémentations postiches ou technique d'extraction. L'intérêt des conteneurs légers tels que Spring pour la mise en place des tests unitaires. Travaux pratiques avec Jmock.
INTÉGRATION CONTINUEPrésentation du principe de l'intégration continue avec Ant ou Maven et des outils du type Continuum ou CruiseControl.
SYNTHÈSEQue peut-on attendre des tests unitaires pour le développement en architecture J2EE ? Impacts des tests unitaires sur la qualité du code Impact des tests unitaires sur les équipes de développement Impact des tests unitaires sur la gestion de projet Bilan économique Principaux ouvrages et sites de référence.
|