Pourquoi opter pour l’automatisation des tests fonctionnels web ?


Pourquoi opter pour l’automatisation des tests fonctionnels web ?

Toute tâche de travail quotidienne qui prend 5 minutes coûtera plus de 20 heures par an, soit plus de la moitié d'une semaine de travail. Même s'il faut 20 heures pour automatiser cette tâche quotidienne de 5 minutes, l'automatisation sera rentabilisée dans un an.

Anthony J. Stieber, consultant en sécurité, auteur de "Breaking into Information Security" (2015)

Lorsque l’on développe un site ou une application web, si l’on est un tant soit peu dans une démarche qualité pour satisfaire le client, alors il convient de réaliser des tests fonctionnels, appelés également tests d’acceptance, avant de livrer une nouvelle version.

Afin de répondre aux nouvelles exigences des clients, afin d’être innovant et afin de rester compétitif, un produit évolue généralement avec le temps. La liste des fonctionnalités s’étoffe donc, et de fait la quantité de tests fonctionnels à passer avant chaque livraison grandit en même temps.

Au lancement d’un produit, on parvient généralement assez bien à réaliser tous les tests fonctionnels manuellement. Mais avec le temps cela devient plus compliqué, voire totalement impossible sans dimensionner en conséquences l’équipe qualité composée de testeurs fonctionnels. Et c’est un fait, le coût d’une équipe qualité n’est pas toujours supportable par une entreprise.

Malheureusement, la réalité c’est que cette absence de qualité peut nuire à l’entreprise. Le produit prend alors le risque de présenter de plus en plus de bugs. Et la conséquence est un cercle vicieux : les bugs augmentent la maintenance corrective, qui impacte la satisfaction clients, la notoriété et la compétitivité. Avec pour conséquence directe : moins de clients, perte de chiffre d’affaires et donc moins de moyens pour rétablir la situation !

A cette étape, lorsque l’on est à la recherche d’un outil stratégique pour assurer la qualité d’un projet web, on examine alors la question d’automatiser les tests fonctionnels. Cela aurait, certes, pu être fait bien plus en amont, en prévention, d’autant qu’on le sait : plus un bug est détecté tard, plus il coûte cher à corriger.

L’étude menée par IBM Systems Sciences Institute est là pour le rappeler : un bug détecté en exploitation coûte 6 fois plus cher à corriger que s’il avait été détecté en validation et 15 fois plus cher que s’il avait été détecté en développement.

 
 
 
 

Mais les choses sont parfois ainsi : certaines conclusions évidentes ne peuvent se forger que par nos propres expériences.

Quoi qu’il en soit, peu importe le moment où l’on y pense, songer à intégrer des tests automatisés est toujours une bonne chose ! Et il est important de bien aborder cette question. Voici quelques éléments pour vous y aider.

 
 
 
 

Qu'est-ce qu'un test fonctionnel ?

Tout d’abord, ce qui est évident pour certains ne l’est pas forcément pour tous. Et c’est même curieusement vrai pour les personnes au sein d’un même domaine. Nous ne mettons pas tous les mêmes mots sur les mêmes concepts, quand bien même ils nous sont familiers.

C’est pourquoi il peut s’avérer utile de prendre le temps de définir précisément ce qu’est un test fonctionnel.

 
 
 

La différence entre un test fonctionnel manuel et automatisé

Une fois la définition de test fonctionnel posée, il est intéressant d’analyser la différence entre un test fonctionnel manuel et un test fonctionnel automatisé.

Un test fonctionnel est dit manuel lorsque son scénario est déroulé par un être humain. Celui-ci exploite ses 5 sens pour effectuer chaque action de la même manière que le fera un utilisateur final et vérifier que cette action entraîne bien les résultats attendus.

Un test fonctionnel est dit automatisé lorsque son scénario est déroulé par un automate. Un automate est un outil programmé et configuré par un être humain pour exécuter des actions prédéfinies, de la même manière que le ferait un utilisateur final et pour effectuer des vérifications précises, identifiées pour valider que le comportement du produit suite à l’action effectuée est bien celui attendu.

Au-delà de ces différences simples, on peut pousser davantage l’analyse pour mieux cerner la différence entre un test fonctionnel manuel et un test fonctionnel automatisé.

 
 
 

Les avantages des tests automatisés dans un projet web

Quelle que soit la solution d’automatisation adoptée (framework Open Source Selenium, service en ligne, etc.), une fois automatisés, les tests et notamment les tests de non régression, présentent à l’évidence un gain de temps pour l’équipe pour leur exécution.

Au delà de cela, si l’on prend soin de choisir la solution qui convient à notre contexte pour la création et la maintenance des tests, de prioriser la création des tests et de bien les concevoir, les bénéfices pour la qualité globale du produit, pour l’équipe et l’entreprise en général sont vraiment quantifiables.

Découvrez les 20 avantages issus de l’automatisation des fonctionnels.

Au programme : fiabilité, reproductibilité, couverture des tests, réactivité, épanouissement et satisfaction clients…

 
 

Les inconvénients des tests automatisés dans un projet web

Les avantages sont une choses mais notre monde non manichéen, difficile d’être utopiste au point de croire qu’il n’y pas une contrepartie à la chose.

Et pour cause, sans parler réellement d’inconvénients mais plus de points d’attention, les tests automatisés en présentent plusieurs.

Au contraire d’être un frein pour leur adoption, il faut plutôt le voir comme une alerte qu’il faut toujours garder en tête pour ne pas oublier de mener les actions utiles pour dominer ces points, les contourner au besoin et en tout cas éviter qu’ils ne constituent un risque au sein du processus qualité.

Difficulté de création, de maintenance, complexité d’analyse des résultats, découvrez plus en détails les 9 inconvénients liés aux tests automatisés.

 
 
 
 

Vous voici informés ! Les tests fonctionnels automatisés ne sont pas miraculeusement identiques à leur version manuelle, ils présentent de nombreux avantages à plusieurs points de vue mais nécessitent également une bonne organisation pour être efficaces, maîtrisés et maintenables.

Et bien appréhendés, leurs bénéfices sont bien plus nombreux que leurs risques associés.

 
 
 
 
 
Stéphanie Binet
Stéphanie Binet

Experte en qualité web, fondatrice de Gonogo Consultech : conseil en stratégie web et fournisseur de la solution HorusTest.
Optez pour une stratégie qualité pérenne ! HorusTest permet de créer et de gérer vos tests automatisés simplement, sans écrire une seule ligne de code et sans compétences techniques.

Découvrir Horus Test

Commentaires


Laisser un commentaire