Processus: Automatiser ses tests

L’automatisation des tests se solde souvent par un échec. Les raisons peuvent être multiples et variées comme :

  • Les problèmes de maintenance
  • L’absence de retour sur investissement
  • Les problèmes d’outils
  • Exécuter uniquement les tests sans les analyser
  • La non compréhension des résultats…

Ces échecs sont généralement explicables par un manque de préparation, de stratégie ou un mauvais processus de mise en place de l’automatisation… Et pour résoudre ces problèmes il faut accepter l’idée que l’automatisation des tests est un projet à part entière.

Dès lors il est normal de procéder par étapes, de connaitre les besoins et étudier l’intérêt d’automatiser et ses conséquences directes.

Par rapport aux processus, il en existe évidemment un grand nombre, je vous propose celui-ci :

Stratégie automatisation des tests

La première chose à identifier, c’est savoir pourquoi on veut automatiser. Les raisons peuvent être diverses, en voici des possibles :

  • Gain de temps sur l’exécution des tests
  • Multiplication des exécutions des tests de régression (ou vitaux)
  • Réduire le coût des tests
  • Implémenter une démarche d’intégration continue

Dans tous les cas la ou les raisons d’automatiser permettront de savoir s’il est intéressant d’automatiser. L’automatisation des tests fait gagner du temps (si implémenté correctement) sur l’exécution de ces derniers mais le retour sur investissement n’est garanti que dans des cas d’exécution fréquentes.

Il faut ensuite sélectionner les tests à automatiser et à automatiser en priorité

Pour cela il faut d’abord choisir quels sont les types de tests que l’on souhaite automatiser. Cela peut par exemple être des:

  • Tests d’interface graphique
  • Tests batchs, Webservices
  • Tests de régression/vitaux
  • Tests de « performances »
  • Tests de sécurité

On peut alors, et seulement alors, choisir l’outil de test afin de choisir le plus adapté :

  • En fonction des tests que l’on veut automatiser
  • En fonction du budget que l’on a
  • En fonction des connaissances de l’équipe
  • En fonction des technologies
  • Il est probable de devoir réduire son périmètre des tests à automatiser lors de cette phase

Vient alors le moment de concevoir l’automate de test. Ce dernier doit être conçu afin de :

  • Limiter la maintenance (la modularité est impérative)
  • Rester stable et fiable

On peut choisir à ce moment-là si l’on souhaite utiliser du KDT afin de faciliter l’automatisation des tests par des personnes peu techniques.

Vient alors le moment de prioriser les tests en fonction de :

  • Leur criticité
  • Leur complexité

Par priorisation il est évidemment possible de choisir de ne pas automatiser certains tests. De manière générale, le plus intéressant est d’automatiser en premier les tests avec le meilleur retour sur investissement, c’est-à-dire les tests qui ne sont pas sur IHM et les tests vitaux.

Enfin, il faut faire le bilan de cette mise en place de l’automatisation

  • Retour d’expérience
  • Résultats de l’automatisation

Il ne faut également pas oublier de continuer à exécuter, analyser, enrichir et maintenir les campagnes de tests automatisés.

Pensez à rejoindre le groupe Le métier du test si le sujet vous intéresse !

N’hésitez pas à me suivre et lire mes autres articles si vous voulez en apprendre plus sur le test ou venir partager vos connaissances

Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles

2 Responses

Laisser un commentaire

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

culture générale

Les qualités d’un « bon testeur »

L’idée de ce post m’est venue suite à la lecture de cet article intéressant sur les « mauvais testeurs ». Etant par nature plutôt adepte de la communication « positive », j’ai décidé d’écrire sur les « bons testeurs ». Je préfère en effet choisir en « adhérant » plutôt qu’en «rejetant ». Quelles sont donc ces qualités qui

Lire la suite »
culture générale

Introduction aux tests de performance

Les tests de performance ont pour but d’observer un comportement (temps de réponse, erreurs) sur une application sous charge. Cette charge est générée par des outils d’injection (donc forcément automatisée) qui reproduisent de l’activité sur l’application. Les tests de performance permettent d’anticiper des situations de production afin d’apporter un maximum

Lire la suite »
Interview

Témoignage ALL4TEST – Créer et gérer son entreprise spécialisée dans le test

Bonjour Julien. Peux-tu brièvement te présenter toi et ton entreprise ? Bonjour, Je m’appelle Julien Van Quackebeke, j’ai 49 ans, diplômé de l’ESTA en 1995 (Ecole Supérieure des Technologies et des Affaires), j’ai eu la chance de pouvoir développer une double compétence technique et commerciale/marketing dès mon cursus de formation.J’ai eu

Lire la suite »