URL: https://linuxfr.org/users/bluebird/journaux/tests-unitaires-et-faineantise Title: Tests unitaires et faineantise Authors: Philippe F Date: 2005年02月22日T15:36:40+01:00 Tags: tdd Score: 2 Un lecteur de linuxfr a dit "je ne fais pas de tests unitaires parce que je suis faineant". Cette remarque m'a profondement interpelle. Donc laissez-moi vous raconter une parabole: l'autre jour, je rangeais les courses dans le frigidaire en discutant avec un pote, informaticien et faineant (pleonasme ?), comme moi. Il me voit enlever l'emballage en carton du paquet de 16 yaourts avant de les mettre au frigo. - tu enleves l'emballage ? - oui - mais c'est beaucoup de travail. Je croyais que tu etais un faineant comme moi ? - oui, mais vois-tu, j'ai decouvert que c'est beaucoup plus de travail de prendre un yaourt si on n'a pas enleve l'emballage avant. Et il y a 16 yaourts a prendre. Il est plus economique d'enlever l'emballage des le debut. Le faineant amateur va simplement mettre les yaourts au frigo, mais le vrai faineant va enlever l'emballage car il sait que celui-ci le fatiguera plus tard. Apres cette parabole hautement philosophique, j'en reviens a mon sujet: si je fais des tests unitaires, c'est justement parce que je suis faineant. C'est beaucoup moins fatiguant d'ecrire un test unitaire puis de le valider avec du code, que d'ecrire du code en songeant a toutes les facons dont il sera utilise et en essayant de garantir que ca marchera a tous les coups. En plus, quand on n'a pas de suite de test unitaire, on est souvent oblige de lancer l'application et de faire quelques manip a la main. C'est super fatiguant. Quand j'aurai un bug, je pourrai me permettre d'etre faineant: je le rajouterai a ma suite de test unitaire, je pourrai facilement faire la modif du code pour le corriger puisque j'aurai deja ma suite de test unitaire pour valider les autres fonctionnalites. Voila, tout ca pour dire que le vrai faineant, c'est celui qui fait des tests unitaires. Les tests unitaires, c'est bon, mangez-en !