Ouarzy's Blog

Ouarzy's Blog

De l’amélioration du process de développement à moindre coût (part 1/3)

Objectif :

- Comprendre l’utilité des tests et la raison de leurs absences sur certains projets

- Proposer une méthode simple et efficace pour implémenter des tests sur du code existant

- Obtenir des critiques constructives sur cette mise en œuvre et des conseils pour son évolution

 

 

De l’importance des tests

Tous ceux qui ont déjà travaillé sur un projet de taille moyenne  ou plus vous le diront : il est extrêmement frustrant de passer des heures sur une fonctionnalité pour se rendre compte en production que notre ajout de code a eu des effets de bord sur une autre fonctionnalité encore plus vitale pour l’utilisateur.

Evidemment la solution à ce problème est connue : il faut tester ! Tester unitairement ses fonctions, tester l’intégration, tester l’IHM…etc

Tester son application à tous les niveaux permet de limiter au maximum les problèmes qu’on découvre seulement en production, tout le monde est d’accord là-dessus.

De fait une question se pose, pourquoi tous les projets du monde ne sont-ils pas parfaitement testés ?

 

 

De la théorie à la pratique

Les projets ne sont pas parfaitement testés, car entre le rêve du développeur d’une appli techniquement parfaite, et le rêve du commercial d’avoir une appli vendable en quelques jours, il y’a un juste milieu à trouver. Ce juste milieu dépend principalement des ressources de l’entreprise. Une multinationale aura plus de facilité à mettre en place un environnement de test pour ses développeurs qu’une start-up ou une PME.

Le but de ce billet est donc de montrer qu’il n’y a pas fatalité, en proposant une méthode de test unitaire et de test d’intégration rapide à mettre en place, même pour une entreprise avec peu de ressources à consacrer aux tests (fini l’excuse du : « oui mais on a pas le temps !»). 

 

 

De la mise en œuvre à moindre coût

Concrètement, l’idée est d’utiliser un outil de génération automatique de tests unitaires paramétrés (Pex and Moles : //research.microsoft.com/en-us/projects/pex/ ), couplé à un outil d’intégration (Jenkins : //jenkins-ci.org/).

Sans être parfait, une utilisation correct de ces 2 outils par une équipe de dev pourra grandement améliorer la qualité du code, à moindre coût, et pourra facilement évoluer vers une gestion plus complète des tests.

 

L'installation et l'utilisation de Pex And Moles et Jenkins seront trés brièvement détaillés dans les 2 articles suivants.

 

   Article Pex   

 Article Jenkins

 



03/02/2012
0 Poster un commentaire
Ces blogs de Informatique & Internet pourraient vous intéresser