roue indiquant 5 difficultés du testeur qui entourent une sixième centrale: le temps

Les difficultés du testeur (6/6): le temps

Cette série part de la présentation faite lors du webinaire « Rendre la vie du testeur plus facile« 

L’idée est de développer chaque difficulté abordée et de présenter des techniques pour y faire face.

roue indiquant 5 difficultés du testeur qui entourent une sixième centrale: le temps

Difficulté: le temps

Le temps est sans conteste l’élément central des difficultés des testeurs. Sans limitation de temps les autres difficultés n’existeraient pas car on connait des solutions… mais ces solutions demandent du temps alors que le testeur peut déjà être sous l’eau avec des éléments essentiels de son travail quotidien comme:

Les activités du test

Un testeur a de nombreuses activités dans son travail quotidien. Des activités que l’on retrouve très fréquemment sont: la conception des tests, l’écriture des tests, l’exécution des tests, l’analyse des résultats des tests, la validation des bugs, l’édition des rapports…

Chacune de ces activités demande du temps et toutes doivent être faites!

L’acquisition des connaissances et compétences

Un testeur, pour réaliser ses activités doit monter en compétences en permanence. Connaitre les évolutions du produit, travailler avec ses coéquipiers, nouveaux outils, évolution de l’utilisation du produit, transformations…

Raisons des difficultés

Les raisons sont nombreuses et communes. Néanmoins elles peuvent se résumer assez simplement: le temps est limité!

Le travail d’un testeur se fait au sein d’un travail plus global autour des équipes participant à la création d’un service numérique. Ce service, imaginé par des designers, spécifiés ou décrit par des Business Analyst et/ou représentants métiers, construit par l’équipe de développement (au sens large)… est attendu par des utilisateurs (ou doit être proposé à une certaine date). Le tout étant évidemment géré par une société ou organisation qui a une stratégie et se doit d’avoir des retours sur ses investissements.

Le temps est donc limité alors que les activités du testeur demandent potentiellement un temps illimité. On arrive alors à un problème assez proche du principe du test « les tests exhaustifs sont impossible« . Ici nous ne parlons pas de « test » mais plus globalement de la qualité du service ce qui nous amène à un corolaire: la qualité parfaite est inatteignable!

Le temps est une énorme difficulté car même s’il est impossible de faire l’ensemble des activités, certaines sont nécessaires pour atteindre (ou s’assurer que l’on a atteint) un niveau de qualité suffisant… Et assez souvent, ce temps nécessaire n’est pas suffisant pour atteindre cette qualité. On est sur un travail constant d’optimisation dans un contexte où le travail doit continuer à être fait!

Solutions envisageables

Il n’y a malheureusement pas de solution toute faite! 🙁

Gérer des problématiques de manque de temps va demander du temps et plus particulièrement un investissement en temps.

Lorsque l’on fait face à des problématiques de temps il est nécessaire de prendre du temps pour pouvoir les résoudre… Malheureusement ce temps est précieux car il manque. Il faut alors s’assurer que ce temps investit aura un retour sur investissement!

Le mieux à faire est, selon moi, d’avoir une démarche proche d’un audit en identifiant les activités les plus chronophages afin d’identifier les problématiques sur lesquelles travailler et ensuite identifier des moyens de les résoudre.

Voici quelques pratiques qui permettent de gagner du temps:

La documentation

Gain de temps:

Il existe des documentation sur de nombreux éléments.

Une documentation produit permet de gagner beaucoup de temps sur la montée en compétence des nouveaux arrivants et l’identification des impacts.

Une documentation des tests permet de gagner du temps sur la montée en compétence, sur l’écriture et la conception des tests

Investissement:

La création de la documentation demande du temps et des revues. Il faut, comme pour les tests, trouver le bon niveau de détail et faire passer les informations nécessaires.

Coût de maintient:

La maintenance d’une documentation, si elle est bien architecturée, n’est pas spécialement élevée. Elle doit par contre être récurrente car si ce n’est pas le cas elle peut vite faire perdre du temps en donnant de mauvaises informations

Le BDD

Gain de temps:

Le BDD fait gagner beaucoup de temps en:

  • permettant à l’ensemble des acteurs d’avoir une même compréhension de l’attendu ce qui évite des allers retours et permet de tester tôt.
  • diminuer le retravail et le temps passé sur la correction des bugs
  • proposant rapidement des tests qui peuvent servir pour la régression

Investissement:

La mise en place du BDD n’est pas simple. Cela requiert une compréhension de la pratique par l’ensemble de l’équipe et du temps! Dans de nombreux cas, une formation et un coach permettent d’accélérer cette mise en place.

Coût de maintient:

Le coût de maintient est assez faible si le BDD est bien mis en place. Une mauvaise mise en place fait gagner moins de temps et peut même en faire perdre!

Les tests exploratoires

Gain de temps:

Le gain de temps des tests exploratoires est très important… Dès lors où l’on est capable de retrouver les tests exécutés et les anomalies détectées à l’aide de chartes bien remplies.

Il faut garder à l’esprit que les tests exploratoires sont principalement complémentaires (ex: pour des tests qui n’ont pas vocation à être ré-exécutés) mais que grâce à cette technique on est capables en moins d’une heure d’exécuter des dizaines de tests auxquels on n’aurait pas forcément pensé avant la session. Les tests exploratoires étant des tests où la phase de conception et d’exécution sont simultanées on supprime la phase d’écriture et de lecture de la procédure ce qui permet de faire en quelques heures quelque chose qui aurait pris potentiellement des jours.

Investissement:

L’investissement est assez faible, il suffit d’avoir une charte et une présentation rapide si personne n’en a encore effectué.

Coût de maintient:

Le coût de maintient est quasi inexistant… dès lors où les chartes sont bien remplies. Ces chartes servent à tracer les tests exécutés et donc savoir ce qui a été testé et les bugs détectés. Il est important de conserver des traces de ce travail car dans le cas contraire on se retrouve à perdre cette connaissance et devoir refaire.

Point d’attention: dans certains contextes (notamment les critiques) certains tests sont obligatoires et il n’est pas possible de faire du tests exploratoires pour ces derniers.

L’automatisation

Gain de temps:

Il est possible d’automatiser de nombreuses activités. Dans la grande majorité des cas on parle de l’automatisation de l’exécution mais des outils comme Yest automatisent d’autres activités comme la conception et l’écriture de scénarios de test.

Dans la suite de cette partie je vais me concentrer sur de l’exécution mais le principe reste le même pour la plupart des activités.

Investissement:

L’investissement sur l’automatisation est lourd!

Il faut avoir une base de test saine que l’on peut automatiser, sélectionner un outil qui permette de les automatiser et qui soit maitrisable par l’équipe (ce qui peut nécessiter des formations).

Lorsque cela est fait il faut « construire » l’automate avec une architecture permettant de limiter les coûts de maintenance en ayant des bonnes pratiques de développement comme la factorisation. Réfléchir à un moyen de paramétré ce qui peut l’être et identifier les objets d’une manière pérenne…

Coût de maintient:

Cela dépend beaucoup de comment l’automatisation a été initialisée. Elle peut vite être chronophage en plus de faire perdre du temps à cause de flaky tests. En bref, il est important d’avoir des indicateurs pour s’assurer d’un ROI.

Définir une stratégie (ou plan) de test commune et adaptée

Gain de temps:

On n’y pense pas forcément mais la mise en place de processus peut faire gagner beaucoup de temps. Cela ajoute des automatisme et permet d’éviter de réinventer la roue mais aussi de réinventer la roue.

Une stratégie de test bien adaptée va permettre de travailler à l’identification de processus adaptés qui doivent avoir un retour sur investissement en terme de temps tout en assurant le bon niveau de qualité.

On peut par exemple imaginer dans le plan de test (ou la stratégie) un travail qui permette de sélectionner les tests à exécuter en fonction du contexte qui permet de gagner beaucoup de temps sur l’exécution ou la mise en place de pratiques spécifiques également.

Investissement:

L’investissement est très variable même s’il peut être relativement faible au départ avec un regroupement de processus qui sera ensuite étoffé et affiné au fil du temps.

L’investissement le plus important est le déploiement effectif de cette stratégie au sein des équipes. Pour cela il est nécessaire qu’elles soient partie prenante des décisions stratégiques de ce document.

Coût de maintien:

Le coût est assez faible mais essentiel car ce document doit être vivant et accepté. Dès lors où la maintenance n’est pas faite, la stratégie est progressivement abandonnée car de plus en plus éloignée du contexte.

Conclusion

Le temps est le problème central des testeurs. De nombreuses solutions pour gagner du temps existent mais leur efficacité dépend du contexte.

Les testeurs et leurs équipes peuvent imaginer des solutions innovantes pour faire face à leurs difficultés ou utiliser des pratiques ou processus qui ont fait leur preuve dans différents environnements. Le plus important est de se rappeler qu’il faut identifier les activités qui posent le plus de problème de temps avant d’envisager des solutions.

Il ne sert à rien de mettre en place de l’IA pour automatiser ses tests si le problème principal de l’équipe est lié à des incompréhensions les fonctionnalités à livrer ou une méconnaissance du produit.

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

N’hésitez pas à faire vos propres retours d’expérience en commentaire.

Laisser un commentaire

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

culture générale

Mauvais réflexes de testeurs

Les testeurs, comme tout le monde, ont des réflexes acquis suite à leurs diverses expériences professionnelles. Certains de ces réflexes sont spécifiques aux tests… Parmi ceux-ci il y en a qui peuvent rapidement devenir handicapant pour l’efficacité du travail de testeur. Voici certains mauvais réflexes auxquels on doit faire attention

Lire la suite »
Interview

Lucie Duchemin: Ingénieure Qualité

Bonjour, qui êtes-vous, quel est votre métier et quelles sont vos activités professionnelles ? Je suis QA engineer chez Weekendesk. Je m’occupe principalement de l’automatisation des tests sur le site web. Étant la seule QA dans mon entreprise, la responsabilité des tests manuels est pas mal confiée aux chefs de

Lire la suite »
2 testeurs. un neutre et l'autre mécontent
culture générale

Que fait un bon testeur ? Bah… il teste!

La question du « bon testeur » est une question récurrente. Comment reconnaitre un « bon testeur » d’un « mauvais testeur » ? Car, si le bon testeur teste, le mauvais teste aussi! Le problème semblant insoluble il est peut être préférable de prendre le problème autrement: Qu’attendons nous d’un bon testeur ? Que fait

Lire la suite »