Les outils, attention il faut bien les utiliser!

Il existe de nombreux outils pour le test (et pas seulement pour le test!). Des outils permettant la gestion des bugs et des tests (ALM, Mantis…), des outils pour l’automatisation ou l’aide à l’automatisation (Selenium, Robot Framework…), des outils pour l’intégration continue (GitLab, Jenkins…), pour le stockage de fichiers (CVS, GIT…) et j’en passe…

Pourquoi y a-t-il autant d’outils ? A quoi servent-ils et surtout à quoi ne servent-ils pas ?

Le rôle des outils

Le rôle des outils est de nous simplifier la vie et nous permettre de faire certaines choses que nous ne pouvions pas faire avant. Cela ne vaut pas uniquement pour le test et est également vrai depuis le début de l’histoire de l’humanité où les outils nous ont permis par exemple de chasser du gibier qu’il nous était impossible de chasser avant.

Comme déjà expliqué en introduction il y a de nombreux outils aux objectifs variés (gestion de tests, automatisation, stockage, Intégration continue…).

Dans tous les cas les outils ont des buts de :

·        Nous simplifier le travail au quotidien : Un outil pour implémenter de KDT permet de simplifier l’automatisation et de la rendre plus accessible. Un outil de gestion de test permet une communication plus simple sur les résultats des tests.

·        Permettre l’implémentation de processus impossible auparavant : Les processus d’intégration continue sont impossibles sans les outils adéquats. En effet à chaque intégration continue il faut faire le merge des branches, le build, le déploiement et de nombreux types de tests. Tout cela ne serait pas possible si des outils automatisés ne le feraient pas à la place des ingénieurs DevOps. C’est aussi parce que des nouveaux outils permettent cela que des métiers comme ce dernier se développent et qu’auparavant ces phases (d’intégration et de déploiement) étaient ponctuelles et planifiées.

·        Gagner du temps : Cela est en partie une conséquence des 2 points précédents. En effet, les outils peuvent faire plus efficacement et rapidement des actions que les humains. Cela libère donc du temps pour faire autre chose, qui a potentiellement une meilleure plus-value. C’est pour cela que depuis la sédentarisation de l’Homme les êtres humains travaillent de moins en moins (de l’aube au crépuscule et tous les jours à la pré-histoire, la noblesse et le clergé ne travaillant pas au moyen-âge, les 35 heures, le chômage, les congés payés et la retraite de nos jours).

Les outils ne permettent pas

Les outils permettent beaucoup de choses, malheureusement ils ne sont pas autosuffisants ! Si je veux faire un trou dans un mur, il me faut au moins un clou et un marteau. Par contre ce marteau et ce clou seuls ne peuvent pas faire ce trou sans l’action de l’homme. De même l’automatisation des tests permet une exécution des tests sans l’action de l’homme, par contre cela ne sert à rien si aucune analyse n’est faite derrière, cette analyse est faite par l’homme (au moins en partie). Il ne faut donc pas prendre les outils pour ce qu’ils ne sont pas :

·        Indépendants : Les outils dépendent de l’homme pour beaucoup de choses telles que leur réalisation, leur maintien et leur utilisation.

·        Auto-suffisants : un outil seul ne peut pas faire de miracles. Même dans le cas du déploiement continu où il suffirait d’appuyer sur un bouton pour tout déployer en production. Dans ce cas ce n’est pas l’outil qui s’autoalimente de fonctionnalités ou de correctifs à mettre en production.

·        Tout (ne peuvent pas tout faire): Un outil a un but. Il est (beaucoup) plus performant que l’homme sur une action précise. Néanmoins il ne peut pas faire autre chose que ce qui a été prévu pour lui. Je ne vais pas construire une maison avec mon marteau ! Cela parait évident mais le choix d’un outil non approprié est souvent un problème avec l’automatisation des tests. Si je veux faire du test automatisé End to End sur une interface graphique alors je dois prendre un outil comme Sélénium ou UFT et non un outil comme JMeter.

Conclusion

Les outils sont indispensables. Ils permettent avec leur aide de faire énormément de choses qui peuvent être impossible sans leur utilisation. Néanmoins même si on peut quasiment tout faire avec des outils, les outils ne peuvent pas tout faire.

Un homme peut tout faire avec des outils mais c’est l’homme qui fait et se sert des outils. Un outil seul ne sert à rien.

De plus pour pouvoir faire de nombreuses choses différentes, l’homme a besoin de nombreux outils différents, chacun ayant sa spécificité. Il faut donc pour l’homme savoir maitriser ses outils, les utiliser à bon escient et choisir le bon outil selon ses besoins. Les outils restent néanmoins indispensables dans tous les métiers et donc dans les métiers du test.

Personne n’est un surhomme par contre tout le monde peut le devenir s’il sait utiliser correctement les bons outils. Je vous invite à lire cet article intéressant sur le testeur « Batman » qui parle bien de cela.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Image représentant le test et de nombreux éléments liés
Couvertures

Le test en image (3)

Tests en cycle en V: qui fait quoi? (image à retravailler) Les retest Tests boite noire Tests boite blanche Tests d’acceptance: Souhaiteriez vous vivre dans cette maison? Couverture des méthode (1 test minimum par fonctionnalité): Couverture des instructions (1 test minimum pour chaque ligne de code): Couverture des chemins d’exécution

Lire la suite »
Agilité

Livre CFTL – Organisation d’une équipe de test

Cet article a été écrit et est paru dans le livre du CFTL « Les tests en agile« . La qualité de la mise en plage est par conséquent nettement meilleur sur le livre. Néanmoins, le contenu reste le même Introduction Qui dit Agilité dit équipes agiles… Et donc équipe pluridisciplinaire. Le

Lire la suite »
Agilité

Comment reconnaitre une équipe agile ?

Je suis de plus en plus contacté pour des conseils sur l’agilité et plus particulièrement sur les tests et l’agilité. J’ai donc décidé de vous proposer cet article sur comment reconnaitre une équipe agile. Commençons par casser quelques stéréotypes : Une équipe est-elle forcément agile si testeur et développeur sont co-localisés ?

Lire la suite »