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 d’aborder des techniques pour y faire face.
Difficulté: la connaissance du produit
Vous est-il déjà arrivé de débarquer dans une équipe en tant que testeur voir même test lead et vous prendre un mu après quelques semaines car un bug majeur n’a pas été détecté ? Qu’après des investigations ils s’avère que ce bug aurait du être détecté par les tests mais que cela n’a pas été le cas car vous ne connaissiez pas assez le produit ?
Je pense que c’est fort probable! Cela m’est personnellement arrivé et j’ai accompagné de nombreux testeurs qui ont également vécu cette expérience.
Lorsque l’on travaille dans le test logiciel on est amené à tester! Et lorsque l’on teste, on teste un produit (ou toute autre dénomination que l’on donne au service numérique).
Pour bien « tester » il est primordial de connaitre ce que l’on va tester. Cette nécessité s’illustre notamment avec certains des 7 principes du test comme l’illusion d’absence d’erreur ou le fait que les tests dépendent du contexte.
Avoir une bonne connaissance de son produit est le résultat d’un travail du testeur qui n’est pas toujours simple. En effet, un testeur, pour bien connaître son produit doit connaître:
- Le fonctionnel du produit
- Les faiblesses du produit
- L’utilisation opérationnelle
- L’orientation du produit (objectif ou la vision du produit ou encore la communication liée au produit)
Raisons des difficultés
Cela ne parait pas forcément énorme au premier abord mais la montée en connaissance peut être très importante… Surtout dans un contexte où l’on veut un testeur opérationnel aussi rapidement que possible.
Connaitre le fonctionnel du produit revient à: connaitre ses fonctionnalités, ses possibilités, son comportement attendu dans la plupart des situations et des utilisations.
Connaitre les faiblesses du produit c’est savoir où son les failles les plus importantes du produit, savoir les contourner, savoir les provoquer mais aussi savoir les fonction et les manipulations qui ont le plus de chances d’être impactées par des régression
Un logiciel / produit / service numérique c’est avant tout ce que ses utilisateurs en font. Savoir comment ses derniers se l’approprient est un élément essentiel (et même l’élément de base) pour savoir comment orienter efficacement ses tests.
Connaître l’orientation du produit est également primordial. Selon la manière dont il est présenté, les attentes seront différentes. Selon la marque qui le propose certaines caractéristiques seront attendues. Identifier cela est aussi un élément important pour le testeur.
Après ces explications rapides je pense qu’il est maintenant plus facile d’appréhender le travail demandé à un testeur et en quoi, le simple fait de connaitre le produit peut s’avérer être une vraie difficulté.
Solutions envisageables
Comme pour toute chose il ne faut pas partir en pensant que l’on ne va pas y arriver.
La tâche est certes grande mais elle reste surmontable… Et surtout elle nécessite un certain temps. Ce n’est pas pour rien qu’il est important d’avoir des testeurs expérimentés mais aussi des testeurs expérimentés sur leur produit.
De même, plus le produit est jeune ou simple, moins la montée en connaissance nécessaire est importante.
De plus, il existe des techniques, méthodologies ou bonnes pratiques qui permettent d’accélérer fortement cette montée en connaissance et ce pour une même « charge de travail ».
La documentation
Le premier point, et cela n’est pas une surprise, c’est d’avoir une documentation du produit. Cette documentation peut prendre de nombreuses formes (manuel utilisateurs, spécifications, tests de régressions lisibles, schémas…) mais une documentation claire c’est une compréhension plus rapide du produit.
D’ailleurs, cette documentation produit ne devrait pas être la seule documentation. Une documentation des tests ou de tout autre élément peut avoir une très grande valeur également.
Malheureusement, il existe encore beaucoup d’équipes qui, faute de temps, décident de faire l’impasse sur la documentation. Ce sacrifice, valable à (très) court termes a de forts impacts à moyen termes ou dès lors où il y a du turn over.
Les tests exploratoires
On n’y pense pas forcément mes les sessions de tests exploratoires sont un formidable outil pour découvrir le produit et se l’approprier. Ils sont beaucoup plus efficace que la simple exécution de tests scriptés ou même la conception et l’écriture de tests pour des US spécifiques.
En effet, les tests exploratoires laissent une liberté au testeur et le poussent à « explorer » l’application et son comportement alors que le suivi d’une procédure de tests scriptés pousse à rechercher des objets et informations sans pour autant comprendre l’application.
Si on veut une image de la vie de la vie de tous les jours. Les tests scriptés c’est un peu le trajet avec GPS qui nous permet d’aller d’un point A à un point B dans une ville et le test exploratoires le trajet sans GPS. Dans le premier cas on arrive bien au point B de manière efficace. Par contre on ne connait pas forcément mieux la ville. Dans le second cas, on mettra peut être plus de temps et on se perdra sûrement. Par contre on sera capables de refaire le trajet plus efficacement et surtout on connaitra mieux la ville!
Le BDD
Ceux qui lisent régulièrement les articles de la taverne ne devraient pas être surpris de retrouver le BDD dans les techniques permettant de mieux connaitre le produit. Les raisons sont multiples. Les principales sont:
- Un vrai échange avec l’équipe pour connaitre la valeur et le comportement des fonctionnalité dans le produit
- La possibilité de poser de nombreuses questions pour mieux comprendre le contexte
- La présence de tests de régressions compréhensibles
- Une communication facilitée dans l’équipe
Les formations
Les formations peuvent également fortement servir.
Être formé sur un produit c’est prendre le temps de mieux le comprendre.
Être formé sur les processus de test et sur le plan de test (stratégie) c’est comprendre les orientations du test mais aussi comment on doit lire et comprendre les livrables du test liés au produit.
Conclusion
La connaissance produit est primordiale pour bien tester. Malheureusement cette connaissance n’est pas innée chez les testeurs et il est nécessaire, pour chaque nouveau testeur de tout produit, de monter en connaissance sur ce produit pour être vraiment efficace.
Cette montée en connaissance peut être plus ou moins longue mais il existe des techniques qui permettent d’accélérer grandement la courbe d’apprentissage des testeurs… mais aussi de tout nouvel arrivant.
Pensez à rejoindre le groupe Le métier du test si le test 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