Dans la taverne je vous ai très tôt parlé d’étapes du processus de test. Je pense notamment à des articles de 2017 sur la conception, l’écriture ou encore l’exécution des tests.
Outre le fait que ces articles datent un peu je me suis aperçu que je n’avais jamais abordé concrètement ce « Processus de test » dans sa globalité et il est temps, je pense, d’y remédier.
Attention: les processus de test sont différents en fonction des produits ou projets sur lesquels on travaille. J’ai donc décidé de vous présenter celui proposé par l’ISTQB (source syllabus ISTQB test manager). Ce dernier peut paraître complexe avec des activités qui se retrouvent souvent « mutualisées » mais il a le mérite de pouvoir s’adapter à de nombreux contexte… et de proposer une référence.
Le processus de test ISTQB
Ce processus est divisé en plusieurs activités successives (des chevauchements sont possibles) accompagnée d’une étape « transverse » qui dure tout au long du processus.
Comme vous pouvez le voir sur l’image ci-dessus, ces activités sont:
L’analyse des tests
L’analyse de test est opérationnellement souvent inclue dans la phase de conception. Le but de cette phase est d’identifier ce qui sera testé. En terme ISTQB cela revient à définir les conditions de test.
Si l’on prend l’exemple d’un envoi de Pièces Jointes (PJs) sur une messagerie. L’analyse de test revient à définir les différents éléments à tester. Cela peut par exemple être: les fichiers autorisés et interdits, le nombre et le poids maximum des PJs, L’excès de PJ, l’ajout de PJ à partir d’une galerie, du Cloud, d’une photo prise en directe…
En résumé l’analyse définit ce que l’on va tester.
La conception des tests
Cette activité est la suite logique de la conception. Elle définit comment seront testées les conditions de test. C’est également lors de cet étape que l’on écrit les scripts de test et où l’on prépare les chartes de tests exploratoires.
Si l’on revient à l’exemple de l’envoi de PJs sur une messagerie et plus particulièrement au format acceptés et interdits. On va décider à ce moment là quels seront les types de fichiers qui seront utilisés pour ces tests mais aussi la manière de la ajouter et pourquoi pas coupler cela avec un nombre ou une taille totale des PJs.
En résumé la conception définit comment on va tester.
L’implémentation des tests
L’implémentation des tests est la phase de préparation à l’exécution. C’est à ce moment que l’on fait tous les préparatifs: environnements et données, initialisation des campagnes (avec les tests non exécutés)…
En résumé l’implémentation des tests c’est la validation de l’ensemble des critères d’entrée de l’exécution des tests.
L’exécution des tests
L’exécution des tests c’est évidemment l’exécution des tests de la campagne. Mais il faut prendre ici le mot « exécution » au sens large. C’est à dire également l’analyse des cas en échec et la gestion des défauts et défaillances repérées.
L’évaluation des Critères de Sortie et Reporting
On est ici sur une activité primordiale: celle de la communication de l’avancée des tests et des résultats de ces derniers. Le livrable qui illustre le mieux cette activité est le bilan des tests.
A noter: cette activité peut évidemment commencer pendant l’exécution
Les activités de Clôture des tests
C’est la dernière phase! Elle correspond en Agile à la rétrospective. L’idée est d’identifier ce qui s’est bien et moins bien passé afin de définir des actions d’amélioration.
L’activité transverse étant:
La gestion, le pilotage et le contrôle des tests
Il peut sembler surprenant de faire de cette activité une « unique » activité.
La gestion (planning en anglais) est la phase de planification des activités. Qu’est ce qui sera fait, quand, par qui et pendant combien de temps ?
Le pilotage (monitoring en anglais) supervise l’avancement et identifie les potentielles dérives.
Le contrôle c’est ce qui permet d’adapter les tests et les activités liées en fonction de différents événements.
Comme vous pouvez le constater, même si ces activités sont différentes, elles restent très liées et sont, en général, sous la responsabilité du test manager (ou équivalent).
Conclusion
Le test va bien au delà de l’exécution!
Il est important de bien:
- Identifier ce que l’on va tester (analyse)
- Identifier comment on va le tester (conception)
- De préparer l’exécution des tests (implémentation)
- D’exécuter ses tests et suivre les conséquences de cette exécution (exécution)
- De mettre fin à l’exécution et de communiquer les résultats (reporting)
- D’implémenter une amélioration continue des tests (clôture)
- Assurer un suivi de l’ensemble de ces activités (gestion, pilotage et contrôle)
Le processus de test proposé par l’ISTQB peut évidemment être critiqué par rapport aux différentes « frontières » (personnellement ma « conception des tests englobe l’analyse mais ne comprends pas l’écriture) mais il faut reconnaitre qu’elle a le mérite de bien identifier des activités essentielles qui se doivent d’être faites (de manière plus ou moins informelles) afin de proposer des tests de qualité.
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.