Les mesures sont essentielles lorsque l’on veut évaluer une performance ou lorsque l’on veut s’améliorer. Comment savoir si l’on s’améliore s’il n’y a pas de mesure confirmant ou infirmant celle-ci ? Afin de mesurer ces performances nous utilisons des indicateurs. Ces indicateurs sont des outils permettant de mesurer un point spécifique… Cette mesure spécifique engendre des possibilité infinies pour les indicateurs et l’on peut vite se retrouver à avoir trop d’indicateurs ou ne pas savoir lesquels utiliser.
Ce choix d’indicateurs est pourtant primordial ce qui explique les nombreuses questions posées par les différents acteurs IT sur le sujet.
L’objet de cet article n’est pas de donner une vérité absolue mais bien de vous proposer des potentielles solutions et surtout, comme l’atelier « les indicateurs dont vous êtes le héros », vous permettre d’adopter une démarche efficace afin de sélectionner les indicateurs appropriés à votre contexte.
Pour cet article nous traiterons un sujet actuel majeur du test, les tests automatisés.
La première question à se poser avant de choisir des indicateurs sur l’automatisation est avant tout de savoir pourquoi on veut automatiser.
Comme vous le savez, il n’y a pas une unique raison pour laquelle on veut automatiser. Des raisons courantes (qui peuvent se cumuler) pour la mise en place de l’automatisation de l’exécution des tests sont:
- Gagner du temps : les campagnes peuvent être de plus en plus longues ou de plus en plus fréquentes. En Agile, on peut vite arriver à un point où l’on passe beaucoup plus de temps à exécuter des campagnes de régression qu’à travailler à l’évolution du produit.
- Gains financier : cette raison est une raison majeure du passage à l’automatisation, le but de toute entreprise est de gagner de l’argent… et une considération indispensable à tout testeur. Pour rappel, le test doit permettre d’assurer un niveau de qualité adapté au contexte pour un investissement aussi faible que possible… C’est le vaste sujet de l’optimisation des tests.
- Augmenter la qualité : de nombreuses équipes ou entreprises décident d’automatiser les tests pour cette raison. Cela peut être une conséquence indirecte de l’automatisation dans la cas où cela permet de: tester plus souvent et détecter plus tôt ou tester plus de scénarios grâce au gain de temps
- Déploiement continu : il n’y a pas de déploiement continu sans automatisation. L’automatisation des tests est donc un passage obligatoire pour implémenter le déploiement continu.
A chaque raison il y a des indicateurs différents!
Voici des propositions en fonction des différentes raisons:
- Gagner du temps:
Il est possible pour cela de prendre comme indicateur la durée d’une campagne de régression (heure de fin – heure de début) ou la charge d’une campagne de régression (nombre total d’heures nécessaires à la campagne) qui prend en compte le nombre de personnes travaillant sur la campagne.
L’automatisation doit permettre de faire diminuer ces 2 indicateurs si son objectif est de gagner du temps.
- Gains financier:
Pour cela l’indicateur le plus évident est le retour sur investissement •((coût des tests automatisés si fait manuellement) – (coût total des tests automatisés)) / (coût total des tests automatisés si fait manuellement). Il est néanmoins souvent assez compliqué de le calculer et il ne faut pas oublier de prendre en compte l’ensemble des coûts… ce qui inclut la capacité de les mesurer avant le début de l’automatisation.
- Augmentation de la qualité:
Pour cela il n’y a rien de mieux que les indicateurs qualité fréquemment utilisés. On peut par exemple penser à la satisfaction utilisateur, le nombre de bugs majeurs ou critiques arrivant en production…
- Déploiement continu:
Le premier indicateur est de savoir si la chaîne de déploiement continu est active! Ensuite il faut regarder l’impact de ce changement sur la qualité. Enfin, il est possible de mesurer le % de déploiement en échec à cause des tests. Cet indicateurs peut mettre en lumière 2 points. Le premier, plutôt positif pour les tests, est de révéler un niveau de qualité dans les tentatives de déploiement, le second, plutôt négatif sur les tests, permet de révéler des potentiels tests instables ou non fiables (flaky tests)
Conclusion
Comme vous l’avez compris il n’y a pas d’indicateur à prendre par défaut. Les indicateurs à sélectionner dépendent du contexte et des objectifs que l’on se fixe. De même, un indicateur seul est rarement performant. Il est préférable d’avoir un ensemble de quelques indicateurs afin d’éviter certaines dérives énoncées par la loi de GoodHart.
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
Pensez à rejoindre le groupe « Le métier du test » si vous souhaitez échanger sur le test
Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles
Publié par