Tests et Validation du logiciel 02/2007 – 06/2007
Tests d’intégration Système d’information Domaine Applicatif métier Fonctionnalité
Tests d’intégration Abréviation Désignation des périmètres de chacun des niveaux MAF Module Applicatif Fonctionnel : il correspond à l’ensemble des écrans et des modules batchs qui répondent à une fonctionnalité MAM Le Module Applicatif Métier correspond à l’ensemble des MAF DOMAINE Le Domaine est constitué de l’ensemble des MAM et du système existant SYSTEME Le Système correspond au Domaine et à son environnement technique associé
Tests d’intégration Objectifs des tests d’intégration par rapport aux tests métiers Objectif des tests d’intégration Validation des interfaces des composants Validation de l’interaction matérielle Objectif des tests métiers Vérifier la bonne mise en œuvre des besoins utilisateurs. Tests fonctionnels visant à contrôler la réponse de l’application aux différents évènements du métier. Conclusion : les tests d’intégration représentent la partie “technique” des tests métier. Ainsi, les tests d’intégration se focaliseront sur le fonctionnement et les aspects techniques de l’assemblage des différents composants ; ils n’entreront pas dans le détail du fonctionnel.
Tests d’intégration Périmètre couvert Périmètre exclus le bon dialogue entre les modules, Appel, transmission de données, compatibilité la livraison par module métier et le fonctionnement des composants de chaque module fonctionnel dans l’environnement d’intégration, le fonctionnement des menus de module métier, le fonctionnement des types d’habilitation et types de profils utilisateurs : les droits d’accès, le droit d’utiliser les différents modes pour chaque dialogue technique, etc. Synchronisations, points de reprises Périmètre exclus les vérifications liées à une action fonctionnelle (à un « business event »), la création des différentes entités fonctionnelles (par exemple, la création d’un fournisseur dans une application commerciale).
Tests d’intégration - suite Architecture des dépendances Unité à tester Dépendance à tester
Tests d’intégration Approches classiques Big-Bang : non recommandé De haut en bas (top-down) De bas en haut (bottom-up) Mixte Par « paquet » de modules ensemblistes
Approche Big Bang Intégration de tous les composants à tester en une seule étape. (intégration massive) Intégration rapide, utilisation privilégiée dans les petits projets. Inadapté pour les projets importants : risque de se perdre suite à un nombre important de modules à intégrer. Perte d’efficacité.
Approche Descendante Unité à tester Dépendance à tester Dépendance sous test Unité sous test Unité à tester Dépendance à tester Bouchon de test (stub) Dépendance simulée
Approche descendante Création de bouchons Test tardif des couches basses Détection précoce des défauts d'architecture Effort important de simulation des composants absents et multiplie le risque d’erreurs lors du remplacement des bouchons. La simulation par « couches » n’est pas obligatoire
Approche Ascendante Unité à tester Dépendance à tester Lanceur Dépendance sous test Unité testée Dépendance testée
Approche ascendante Avantages Inconvénients Faible effort de simulation Construction progressive de l'application s'appuie sur les modules réels. Pas de version provisoire du logiciel Les composants de bas niveau sont les plus testés, Définition des jeux d'essais plus aisée Démarche est naturelle. Inconvénients Détection tardive des erreurs majeures Planification dépendante de la disponibilité des composants La simulation par « couches » n’est pas obligatoire
Approche Mixte Combinaison des approches descendante et ascendante. Avantages : Suivre le planning de développement de sorte que les premiers composants terminés soient intégrés en premier , Prise en compte du risque lié à un composant de sorte que les composants les plus critiques puissent être intégrés en premier. La principale difficulté d’une intégration mixte réside dans sa complexité car il faut alors gérer intelligemment sa stratégie de test afin de concilier les deux modes d’intégration : ascendante et descendante.
Approche par paquets de modules Par importance de modules (criticité) Par ensemble fonctionnel …..
Approche Mixte
Approche - exercice Dès que possible dans le planning, donner des cinématiques d’étapes d’intégration ascendante, descendante et mixtes définissant : Les éléments testés Les lanceurs Les bouchons Planning : T : A,C,D T1 : H,G T2 : F T3 : B,E