DissertationsEnLigne.com - Dissertations gratuites, mémoires, discours et notes de recherche
Recherche

Technique de test en programmation (test fonctionnel)

Compte rendu : Technique de test en programmation (test fonctionnel). Rechercher de 53 000+ Dissertation Gratuites et Mémoires

Par   •  9 Avril 2022  •  Compte rendu  •  2 940 Mots (12 Pages)  •  421 Vues

Page 1 sur 12

TD N°1: Sur les techniques

de test fonctionnel

        I-PROBLÉMATIQUE :

        1-L'ingénieur de test doit utiliser des techniques dans le cadre de son activité de test d'un logiciel. Ces techniques sont multiples et variés afin de tester le logiciel le plus efficacement possible. Cette première série de travaux dirigés, a pour but de mettre en œuvre dans la pratique certaines techniques de test fonctionnel introduites en cours, notamment les techniques fondées sur l'analyse partitionnelle, les tests aux limites et le graphe cause-effet.

        2-Ces techniques de test fonctionnel ont un même point commun : elles s'appuient sur la spécification. En effet, un test fonctionnel, examine le comportement fonctionnel du logiciel, afin de détecter les erreurs d'omission et de conformité par rapport à la spécification. Pour ceci, l'étude de la spécification permet de générer des jeux de données de test (DT) représentatifs qui seront injectés en entrée du logiciel.

        II-RÉALISATION :

A) Cas n°1 : test du logiciel « constructeur de triangles »

        Pour ce premier exercice, nous allons étudier sur un constructeur d'objets de type triangle Q. À chaque appel de ce constructeur, il faut entrer trois paramètres correspondant à la longueur des 3 côtés du triangle à dessiner. En fonction de ces 3 paramètres, le résultat peut être le suivant :

        - l’objet est un triangle scalène,

        - l’objet est un triangle isocèle,

        - l’objet est un triangle équilatéral,

        - l’objet est un non-triangle,

        - cas impossible.

        Pour réaliser cet exercice, nous allons premièrement écrire un constructeur simple qui servira de logiciel sous-test, puis définir les classes d'équivalence (qui fait partie de l'analyse partitionnelle de l'exercice) qui nous servira pour élaborer une stratégie de test aux limites et enfin générer à partir des techniques de test qui précèdent un jeu de DT.

Étape 0 : Écrire un constructeur simple de logiciel sous-test :

        Dans cette étape, nous avons réalisé un logiciel de sous-test afin de manipuler des triangles et tester facilement, notamment en écrivant un constructeur qui demande successivement la longueur des trois côtés d'un triangle (Exercice1.cpp).

[pic 1][pic 2]

En effectuant une liste de comparaisons entre les valeurs entrées (a, b et c) le logiciel test est capable de déterminer la nature du triangle.

[pic 3]

        Dans le constructeur typeTriangle(), nous demandons trois longueurs du triangle comme afficher ci-dessous sur la capture. L'utilisateur rentre alors les trois longueurs du triangle et le constructeur en calcule alors si c'est un :

        - un triangle isocèle,

        - triangle scalène,

        - un triangle équilatéral,

        - un non-triangle,

        - cas impossible.

[pic 4]

        De plus, afin de faciliter la vérification du bon fonctionnement de l'entrée des données, nous avons implémenté une fonction displayTriangle() qui affiche les trois longueurs du triangle demandé.

Étape 1 : Définir les classes d’équivalences :

        On peut commencer par définir les classes d’équivalences selon les différents cas des triangles suivant :

Classes des

triangles :

Conditions des

  triangles :

Triangle isocèle

 isocèle si a≥b et a≥c et b+c≥a et (b=c) ≠ a

isocèle si b≥a et b≥c et a+c≥b et (a=c) ≠ b

isocèle si c≥a et b≥c et a+b≥c et (a=b) ≠ c

Triangle scalène

scalène si a>b et a>c et  b+c≥a et b ≠ c ≠ a

scalène si b>a et b>c et  a+c≥b et a ≠ c ≠ b

scalène si c>b et c>a et  b+a≥c et b ≠ a ≠ c

Triangle équilatéral

équilatéral si a=b=c

Non-triangle

Non-triangle si a≥b et a≥c et  b+c < a

Non-triangle si b≥a et b≥c et  a+c < b

Non-triangle si c≥b et c≥a et  b+a < c

Cas impossible

cas impossible si a, b ou c <0

cas impossible si a, b ou c est un caractère ≠ à un nombre

cas impossible si a, b ou c est vide

        Pour résumer, en définissant quatre classes d’équivalences nous pouvons obtenir, (avec A, B et C les trois longueurs d’un triangle) un tableau démontrant tous les cas possibles pour le test du logiciel « constructeur de triangles » tel que

Classe

Entrées

Validité

    C1 : Entrées négatives                

                A v B v C < 0                          

          Invalide          

     C2 : Entrées nulles              

                A v B v C = 0                

          Invalide          

    C3 : Entrées correctes        

 0 < A v B v C < MAX Entier + 1

           Valide            

  C4 : Entrées trop grandes

        MAX Entier < A v B v C        

          Invalide                      

Étape 2 : Élaborer une stratégie de test aux limites :

        Le principe de la technique consiste à s’intéresser aux bornes des classes lorsque ces classes partitionnent le domaine D des données d’entrées. Le test aux limites est considéré comme l’une des techniques fonctionnelles les plus efficaces. On constate que souvent les défauts sont dus au fait qu’on n’a pas prévu le comportement d’un logiciel, pour les valeurs limites.

        Les DT limites résultent de l’étude des limites des champs de définition des données d’entrées. Le fait d’envisager des valeurs qui dépassent les limites pourrait paraître injustifié. En effet, le logiciel n’a, en principe, pas été conçu pour traiter des données hors spécifications.

        De manière générale, les tests aux limites consistent à identifier les domaines de définition de chaque variable d’entrée. Ces valeurs sont combinées pour produire des jeux de DT. Nous allons donc prendre des valeurs qui respectent les conditions des classes d'équivalence et générer un jeu de DT pour démontrer cette stratégie de test aux limites.

Classe

Limites

Validité

Bornes entre les classes

C1,C2

-4

-3

0

Invalide

Invalide

Invalide

Bornes entre les classes

C2, C3

0

1

4

MAX Entier -1

Invalide

Valide

Valide

Valide

Bornes entre les classes

C3, C4

MAX Entier -1

MAX Entier

MAX Entier+1

Valide

Valide

Invalide

Étape 3 : Générer à partir des techniques de test qui précède un jeu de DT :

        Grâce aux techniques de test que nous avons préalablement décrite sur les trois premières étapes, nous pouvons générer un jeu de DT sous forme de tableau ci-dessous :

[pic 5][pic 6]

N° DT

DT de tests limites:

Remarques:

1

30,25,17

Triangle scalène

2

15,16,20

Triangle scalène

3

12,30,24

Triangle scalène

4

2,2,1

Triangle isocèle

5

3,2,2

Triangle isocèle

6

4,4,1

Triangle isocèle

7

2,2,2

Triangle équilatéral

8

3,3,3

Triangle équilatéral

9

20,20,20

Triangle équilatéral

10

1,1,5

Non-triangle

11

4,1000,1

Non-triangle

12

0,0,0

Non-triangle

13

-1,2,2

Cas impossible

14

A,2,2

Cas impossible

15

« »,1,1

Cas impossible

...

Télécharger au format  txt (16.1 Kb)   pdf (557.5 Kb)   docx (503.6 Kb)  
Voir 11 pages de plus »
Uniquement disponible sur DissertationsEnLigne.com