Tests : le facteur humain.

Il m’arrive régulièrement en discutant avec des collègues ingénieurs que ces derniers me disent :

« Tu sais, pour les tests tout dépend du testeur ».

Je n’aime pas cette phrase. Certes le métier de testeur est un métier à part qui requiert des compétences spécifiques, néanmoins ce facteur humain, bien que toujours présent doit être, au moins sur certaines parties, quasiment inexistant.

Je suis toujours choqué lorsque l’entends :

·        La qualité de l’écriture des tests dépend du testeur qui les a écrits. L’écriture des cas de test c’est la base, tout testeur doit être capable d’écrire des cas de tests (manuels) propres.

·        La qualité de l’exécution des tests dépend du testeur. J’ai même eu une fois cette remontée : « On a eu un bug critique sur un cas couvert. Mr X avait validé ce cas de test. Lorsque l’on a ré-exécuté le cas il ne passait pas, en fait il n’était jamais passé. » Le résultat d’une exécution d’un cas de test ne doit pas dépendre de celui qui l’exécute ! La rigueur est primordiale dans ce métier.

·        Les processus ne fonctionnent que lorsque ce testeur est présent. Les processus sont également mis en place pour que les tests ne dépendent pas d’une unique personne.

·        Depuis que Mr X est parti les tests ne sont plus maintenus. Ici il y a plusieurs possibilités, soit personnes ne maintien les cas de test à part Mr X et cela est très problématique. Soit le départ de Mr X fait que les tests ne sont plus maintenable car les ressources de l’équipe ont diminuées. Dans ce cas il faut sélectionner quels sont les tests à garder et lesquels l’équipe peut ne plus exécuter.

·        Quand Mr X n’est pas là c’est le bazar dans les données. La qualité des données de test ne peut pas être dépendante d’une unique personne. De mauvaises données engendrent de mauvais résultats de test et donc une campagne peu fiable.

Le facteur humain, dans une équipe, doit être minime dans les cas suivants :

·        L’écriture des cas de test

·        L’exécution des cas de test

·        Le suivi des processus.

·        Le maintien des cas de test

·        La qualité des données et de l’environnement de test (lorsque c’est la responsabilité des testeurs)

Par contre le facteur humain rentre dans beaucoup d’autres aspects du métier de testeur, en voici quelques-uns :

·        La compréhension du contexte. Le plan de test doit aider à le comprendre mais seul l’expérience permet de comprendre parfaitement le produit et le contexte.

·        L’évaluation des risques. Cela rejoint en partie la compréhension du contexte mais cela doit également être communiqué avec le bilan des campagnes.

·        La compréhension du fonctionnel. Selon le logiciel sur lequel on travaille le fonctionnel peut être plus ou moins compliqué et demandé plus ou moins de temps à être maitrisé.

·        La sélection des cas de tests de régression. En effet, selon les testeurs, différents tests peuvent être choisis. En général un testeur plus expérimenté est plus à même de sélectionner les cas les plus pertinents.

·        La sélection des cas de tests vitaux. Même constat que pour les tests de régression

·        L’analyse des cas de tests en échec. En effet l’analyse d’un cas de test en échec n’est pas toujours aisée et la cause n’est pas toujours évidente. Un testeur doit faire une première analyse mais un testeur qui aura plus d’expérience avec l’application aura généralement uns meilleure analyse.

·        La gestion des bugs. Par « gestion des bugs » j’entends ici le fait de monter un « bug » lorsque c’est vraiment un bug (cela demande une bonne analyse du cas en échec), de bien le documenter pour ne pas avoir de retour pour manque d’informations, de bien prioriser et donner la bonne criticité.

·        La mise en place de processus. Un processus bien pensé et efficace ne doit pas être compliqué à suivre, par contre savoir comment le mettre en place et ce qu’il faut mettre en place afin que cela corresponde le plus possible aux besoins de l’équipe et à son acceptation dépendra du ou des personnes ayant travaillées dessus.

·        L’adhésion de l’équipe (Scrum) aux tests. Selon les testeurs (et les équipes) l’intégration puis l’acceptation de nouveaux processus (comme les revues de codes) peut être compliquée. Les compétences de communication du testeur peuvent être fortement challengées.

Conclusion :

Comme dans tous les métiers l’expérience comme le contexte (un testeur peut avoir des difficultés sur un projet mais avoir une très forte plus-value sur un autre) jouent beaucoup sur les performances des testeurs. Le facteur humain est donc très important. Néanmoins ce facteur humain, aussi présent soit-il dans la connaissance du produit ou les phases d’analyse, ne peut être accepté dans certains cas qui sont les bases du métier. Un testeur doit maitriser ses bases comme l’écriture et l’exécution des cas de test ou le suivi des processus… Dans ces cas-là, seule la rigueur est nécessaire et donc il ne doit pas avoir (ou peu) de différence entre un novice et un testeur expérimenté (sa plus-value n’est pas là).

N’hésitez pas à rejoindre le groupe Le métier du test

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.

Publié par

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion /  Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion /  Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion /  Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion /  Changer )

Connexion à %s