La bonne démarche de construction des tests logiciel : les définitions préalables.

Automatisé ou non, la réussite et la pertinence des tests logiciels vont dépendre de la démarche de construction. Comme pour toute création ou développement, le processus de test doit répondre aux principes : définition préalables des tests, procédures d’exécution et méthode de vérification. Sans cette base, ce tronc commun, il y a de forte chance pour la mise en place se complique ou ne puisse aboutir. N’en parlons même pas si vous ne disposez ni des moyens ni des ressources humaines nécessaires pour mener le projet. Nous verrons dans cet article les définitions préalables nécessaires.

1 – Définir les tests à réaliser.

La réussite des campagnes de tests logiciels se joue dès le départ, dès la phase de spécification. C’est ce qu’on appelle un plan de tests (de validation, d’intégration, unitaires). La spécification passe, irrémédiablement, par la rédaction des procédures associés à chaque tâche.

Partons d’un postulat : les tests peuvent être aussi nombreux et important que l’on veut, la multitude des jeux de données, des parcours utilisateurs, des modes de fonctionnement et la variété des exigences sont telles qu’une infinité de tests peut être menée sans qu’on soit certain de la conformité totale aux exigences. L’effort de test est corrélé aux enjeux, à un ROI. Il faut donc se fixer des objectifs en amont de toute stratégie, des méthodes … C’est de l’objectif qu’il faut construire une stratégie. C’est la garantie de réaliser les tests avec un maximum d’efficacité tout en garantissant la couverture nécessaire pour un livrable d’un niveau de qualité acceptable. Acceptable n’étant pas ici l’adjectif qualificatif synonyme de “passable” mais le niveau qui conjugue ROI et dysfonctionnement dans le livrable. Les objectifs de tests permettent de concentrer les efforts et les ressources là où ils sont essentiels.

Les objectifs de tests de chaque phase sont définis en tenant compte : 

  • Des exigences fonctionnelles et de performance 
  • Des exigences en matière de qualité et de sûreté
  • De toutes les contraintes identifiées d’implémentation 
  • Des exigences légales et réglementaires 

De toute cela il va en découler la définition des types de tests à réaliser (chemins structurels, fonctionnels, données d’entrée …) et, surtout, la justification de ces choix !

1.2 – Définition de la stratégie de test

Une règle d’or : les tests doivent être réalisés sur la base d’une stratégie. C’est un impératif nécessaire à la mise en place des tests et à la conception des jeux de données. L’absence d’une stratégie c’est le chemin direct vers l’improvisation… Pour faire simple la bonne stratégie c’est de définir comment les tests doivent être menés pour répondre aux objectifs. Il faut organiser les tâches en une structure lisible d’étapes, avec systématiquement des objectifs. On détermine les méthodes et les moyens de tests pour y parvenir, puis la planification des tâches. C’est cet ensemble qui constitue la stratégie mise en œuvre. La définition des tests aboutit, au final, à la réalisation de fiches de tests (cf. notre article : les 5 étapes nécessaires pour rédiger une fiche de tests efficace).

Étape suivants : définir les procédures de test. La rédaction des procédures de test doit comprendre la description de jeux de données et la description des critères d’acceptation des résultats. Un processus de test mis en œuvre correctement implique que les procédures soient mises en place le plus en amont possible. Il est impératif que ces procédures contiennent toutes les informations nécessaires :

  • Pour les identifier et les tracer vis-à-vis des objectifs et de la stratégie
  • À l’exécution du test

1.3 – Définition des moyens de test

Quel que soit le niveau d’exigence, la définition de la stratégie et des procédures de tests il faut également définir les moyens nécessaires. Le manque de cette information diminue la crédibilité de la stratégie et des méthodes envisagées. Pour exemple, préalablement il faut penser :

  • Aux outils : simulateurs, comparateurs, outils de test, etc.,
  • À l’environnement de test
  • Aux jeux de données, tables de paramètres …

Pour les tests unitaires, plus la définition de la stratégie est anticipée, plus les outils sont adaptés à la taille du livrable à tester. C’est en amont du projet qu’il est possible d’automatiser ses tests. 

La définition de ces trois éléments : les tests à réaliser, la stratégie, les moyens, est la condition sine qua non pour exécuter vos tests et pour améliorer la qualité de vos livrables. Ces définitions sont nécessaires à la mise en place d’un plan de test qui vous permettra, aussi, d’automatiser l’exécution de vos tests. N’hésitez pas à nous solliciter si vous souhaitez être aider pour les réaliser 😉 

Les documents du monde du test

Les livres blancs
Lettre d’information Recevez l’actualité des tests