28 novembre 2016 à 2 décembre 2016
Résidence La Fayette
Fuseau horaire Europe/Paris

Introduction au TDD avec Java, et Junit sous Eclipse

29 nov. 2016, 14:30
1h 30m
Résidence La Fayette

Résidence La Fayette

La Rochelle

Orateur

M. Bruno MERMET (Université du Havre et GREYC - UMR 6072)

Description

Après des progrès importants il y a 30 ans dans les techniques de développement logiciel, quasiment 15 ans se sont passés sans que de nouvelles idées émergent dans ce domaine plutôt négligé. Ce fut l'époque florissante des langages de spécification, avec notamment l'avènement d'UML, et aussi l'apparition de quelques langages plus ou moins anecdotiques (Eiffel, Java par exemple). C'était aussi l'époque où, notamment en France, la seule destinée d'un ingénieur en informatique était de terminer chef de projet. Mais à force de constater les fréquents échecs des projets informatiques, certains développeurs ont commencé à se pencher sur le problème du développement en lui-meme, et ont fini par établir que de mauvaises pratiques de développement constituaient souvent la source principale de ces échecs. Ce qui fut déjà établi dans ce domaine par le Manifeste Agile (2001) et se trouva conforter non seulement par les principes de certaines méthodes Agiles (XP par exemple), fut mis en exergue dans le Manifeste pour l'Artisanat du Logiciel (2009) ; enfin, les critères de qualité et validité d'un code prenaient la place qui leur était due ! Le développement Guidé par les Tests, ou TDD (Test Driven Development) est l'une des techniques qu'il est possible de mettre en œuvre pour augmenter la qualité et la validité d'un code. Dans cette session, nous commencerons par étudier les motivations ayant amené à la mise en œuvre du TDD et les principes de base. Nous illustrerons alors tout cela sur un exemple développé en commun (les outils utilisés seront le langage Java avec la bibliothèque JUnit et l'environnement Eclipse, mais aucune connaissance préalable de ces 3 outils n'est nécessaire). Dans une deuxième partie, je présenterai brièvement d'autres types de pratiques du tests (et des outils correspondant) complémentaires du TDD ayant des objectifs globaux similaires : l'ATDD (Acceptance Test Driven Development), et sa mise en œuvre avec l'outil Fitnesse, et le BDD (Behaviour Driven Development) et sa mise en œuvre avec l'outil Cucumber. Enfin, la session se terminera par une séance de travaux pratiques, où les participants, en binôme, mettrons en œuvre la technique du TDD sur un cas pratique.

Documents de présentation