Pourquoi vous devez utiliser des tests autant que possible
Bien que souvent considéré comme fastidieux et peu utiles l’écriture de test automatisable pourra vous être d’un grand secourt.
Ils sont en outre les garants de la qualité du code de l’application.
Nous allons donc voir plus en détails quelles sont les diverses utilités des tests et pourquoi vous devez les utiliser.
C’est hélas une partie négligé car pour beaucoup :
- ça fait perdre du temps
- je code super bien donc pas besoin de tests
- …
Bon que l’on soit clair je trouve toutes les raisons ci dessus nulles et a oublier au plus vite. Je vais donc vous dire a présent pourquoi je pense ainsi.
Alors le célèbre ça fait perdre du temps, certes écrire des tests prends du temps mais quand il vas y avoir un bug – et il y’en a toujours – vous allez être content de le trouver rapidement avec ce test et la vous allez gagner du temps. Idem quand vous allez modifier le code plus tard ces tests automatisés vous aiderons bien a vérifier qu’il n’y a pas eu d’introduction de bug.
Je tiens aussi a signaler que le coût d’un bug augmente au fur et a mesure du temps. En effet corriger un bug en phase de développement n’a pas le même cout qu’une fois en production.
Pour la partie du je code super bien … pas la peine de s’étaler sur le fait que personne ne peux être dur de ne jamais introduire de bug, de ne jamais zapper un cas d’utilisation – surtout qu’on a la fâcheuse tendance a toujours vouloir avoir le cas idéal et ne pas prendre en compte des cas totalement illogique.
Comme j’ai pu le dire les tests nous aide à vérifier que notre application fonctionne comme voulu, que l’on ne re-introduit pas de bug mais il faut quand même rester vigilent car il est possible que nos tests de soit pas complet (cas oublié, bug non testés etc) et doivent donc comme votre code vivre et rester à jour sous risque de devenir plus néfaste que leurs absences.
Program testing can be used to show the presence of bugs, but never to show their absence!
Edsger W. Dijkstra
Personnellement les tests sont aussi la comme documentation, en effet en regardant les tests on comprend souvent comment fonctionne l’application ce qui est plus rapide que devoir lire des pages et des pages de doc. Je vous invite à lire les tests autant que possible (en plus leurs absence n’est pas très bon signe sur la qualité du code selon moi).
En résumé les tests :
- permette de vérifier que le fonctionnement est celui attendu
- Eviter l’introduction de bug lors de modification ultérieure – et donc pouvoir toucher au code de manière sereine
- Faire une sorte de documentation
- Doivent vivre avec le code pour ne pas être inutiles et dangereux
Je vais bien entendu écrire des articles sur ce sujet (traitant le sujet d’un point de vu pratique) en parallèle de celui sur les web component.
comments powered by Disqus