La conception des tests métiers

(temps de lecture moyen: 3 min)

 

La conception des tests métiers fait partie des activités et livrables de la stratégie de tests métiers.

Souvenez-vous : celle-ci comporte un document central, définissant la vision, le planning et la méthodologie à appliquer pour vérifier la conformité de la solution.

Cette feuille de route comprend en outre l’identification des campagnes, ainsi la description précise des scenarii et cas de tests.

schema scenario de test

Le contexte des tests métiers

Regardons ensemble les contextes possibles :

  • Livraison totale de la solution,
  • Livraison partielle et modulaire de la solution,
  • Livraison partielle et itérative de la solution.

Dans le cas de la livraison de la solution complète, le testeur doit vérifier la conformité de cette dernière aux spécifications fonctionnelles détaillées. On retrouve ce genre de situation dans les projets gérés en « V » ou en cascade.

Dans le cas de la livraison partielle modulaire, le scenario de test fonctionnel couvre uniquement la portion de fonctionnalités livrées, à laquelle s’ajoutent des tests de non-régression des fonctionnalités liées déjà livrées et testées.

Enfin, dans le cas de livraison partielle itérative, il s’agit de décrire les scenarios et cas tests exploratoires, dont l’objectif est d’assurer une couverture systématique et incrémentale des exigences fonctionnelles. De plus, on y retrouve des tests de non-régression de ces mêmes fonctionnalités, déjà livrées et testées lors d’une itération précédente. C’est un fonctionnement que l’on retrouve essentiellement dans les projets dits « agiles ».

Les campagnes de test

Une campagne de test est un découpage artificiel utilisé pour tester de la manière la plus efficace et pertinente possible tout ou partie de la solution livrée.

Ce découpage repose sur des critères variés, tels :

  • les fonctionnalités livrées à tester,
  • la répartition de la charge de test sur l’équipe de testeurs,
  • la priorité et la criticité des tests
  • l’objectif des tests

Selon les contextes, il est tout à fait possible de n’avoir une seule campagne de test.

Mon astuce pour la définition les campagnes de test

Posez-vous les questions suivantes :

  • Est-ce que ce découpage est compatible avec le planning de livraison de la solution ?
  • Est-ce que la somme de ces campagnes permet de tester intégralement la solution ?
  • Est-ce que l’objectif à atteindre est clairement identifié pour chacune de ces campagnes ?
  • Est-ce que ce découpage permet de dérouler les cas de test de manière la plus indépendante possible?
  • Est-ce que ce découpage permet de répondre de la meilleure manière à la priorité et à la criticité des cas de test ?
  • Est-ce que les tests de non-régression éventuels sont bien intégrés, et à quel niveau (campagne dédiée, scenario, cas de test)?

Les scenarii de test

Dans le cas d’une livraison modulaire ou totale, je préconise qu’à chaque scenario devrait correspondre la vérification intégrale d’une des fonctionnalités métier ou d’une des exigences non fonctionnelles décrites dans les spécifications fonctionnelles détaillées (SFD).

Dans le cas de livraison partielles ou itératives, le scenario et ses cas de tests concernent uniquement le périmètre livré, toujours dans le cadre des SFD.

Le Business Analyst doit systématiquement faire des allers-retours entre SFD et périmètre de la livraison, en étroite collaboration avec l’équipe de développeurs.

Pour éviter le travail en silo, je vous recommande de prévoir les tests de non-régression dans un scenario dédié, regroupant tous les cas d’utilisation impactés par la nouvelle itération de la solution.

Les cas de test

Un scenario contient un regroupement logique de cas de tests.

Ceux-ci décrivent les procédures à dérouler pas à pas pour un jeu de données précis, dans le cadre d’une utilisation spécifique de la solution.

Ils doivent couvrir tous les types de situations pouvant arriver, lesquelles sont normalement décrites dans les SFD. Le Business Analyst doit s’assurer que pour un scenario donné, les cas de test vérifient la réponse de la solution au cas nominal et aux cas alternatifs, et qu’elle gère correctement les exceptions.

Selon les contextes (le Business Analyst fera appel à sa logique et à son expérience…), la définition des tests liés à la gestion des erreurs peut être décrite dans un scenario dédié soit directement dans la procédure d’un cas de test.

Enfin, retenez que chaque cas de test doit comprendre a minima les éléments suivants :

  • prérequis,
  • jeux de données à utiliser,
  • description de la situation initiale
  • description précise des résultats attendus (conformément aux SFD).