• Aucun résultat trouvé

A cela pr`es que CoPAS explore tous les chemins possibles2 depuis l’´etat initial pour trouver des chemins correspondant `a un sch´ema de test et finir dans un ´etat stable. Cela correspond `a notre crit`ere pour associer un objectif de test `a un test abstrait (d´efinition 12). Nous sommes assur´es de la terminaison de ce processus de recherche exhaustif car notre sp´ecification initiale est finie et poss`ede des ´etats stables, son abstraction a donc les mˆemes propri´et´es (section 9.2).

D’apr`es nos crit`eres, dont l’isomorphisme de la sp´ecification et de son abstraction, `a chaque chemin de l’abstraction de la sp´ecification couvert par un sch´ema de test nous pouvons associer un test abstrait ayant un chemin corres-pondant sur la sp´ecification. Avec CoPAS, comme nous avons la sp´ecification et son abstraction, lors de la recherche de la couverture d’un sch´ema de test nous pouvons g´en´erer un test abstrait par chemin correspondant au sch´ema de test. Cela permet d’obtenir l’ensemble exhaustif des tests abstraits correspondant `a ce

sch´ema de test.

CoPAS peut g´en´erer un test abstrait pour chaque chemin de la sp´ecification correspondant au sch´ema de test consid´er´e. L’utilisation de CoPAS avec nos trois sch´emas de test a g´en´er´e un ensemble de tests abstraits correspondant `a InvLabs

A[T AS0()]o`u T AS0 est appliqu´e `a chaque sch´ema de test. La couverture obtenue avec chaque sch´ema de test et chaque ensemble de tests abstraits associ´es sont bien les mˆemes, le crit`ere de couverture pr´esent´e dans le chapitre 9 est bien appliqu´e.

Nous pouvons toutefois remarquer que le nombre de tests abstraits peut alors devenir tr`es important, voire sans doute trop important, notamment pour le sch´ema de test 4 qui g´en`ere 1728 tests abstraits, si nous voulons ex´ecuter chaque test abstrait produit. En utilisant une m´ethode de r´eduction de suite de test, nous pouvons g´en´erer un nombre bien plus r´eduit de tests abstraits. En effet notre crit`ere de couverture nous permet de ne couvrir qu’une fois chaque transition, cela nous permet de r´eduire le nombre de tests abstraits n´ecessaire en ne g´en´erant pas les tests abstraits redondants du point de vue des transitions couvertes.

Nous avons apport´e les modifications `a CoPAS pour qu’il puisse g´en´erer un ensemble r´eduit de tests abstraits suivant son algorithme de recherche de chemin et avec comme objectif de couvrir les transitions au moins une fois. Pour tout test abstrait produit, associ´e `a un sch´ema de test, il existe une transition telle que cette transition n’appartient `a aucun autre test abstrait produit associ´e `a ce sch´ema de test. CoPAS permet ainsi de g´en´erer 4 tests abstraits pour le sch´ema de test 1, 38 pour le sch´ema de test 2 et seulement 22 pour le sch´ema de test 4. Chacun de ces ensembles de tests abstraits obtient la mˆeme couverture que leur sch´ema de test correspondant.

CoPAS permet de g´en´erer des tests abstraits pour des sch´emas de test donn´es et de valider notre mesure de couverture. Cela sous r´eserve que la sp´ecification corresponde aux crit`eres que nous avons mis en place pour obtenir cette couverture de test.

10.3 Utilisation de CoPAS avec TObiAs et TGV

Lors de l’´etude de cas du syst`eme d’ascenseurs du chapitre 6, 608 tests abs-traits associ´es `a 5 sch´emas de test ont ´et´e produits. Dans cette deuxi`eme partie de

10.3. UTILISATION DE COPAS AVEC TOBIAS ET TGV 149 l’´etude, nous reprenons les sch´emas de test 1, 2 et 4. Pour chacun de ces sch´emas de test nous utilisons CoPAS pour observer les diff´erences qui apparaissent entre la couverture que nous proposons dans le chapitre 9 pour les sch´emas de test et la couverture obtenue pour les tests abstraits associ´es obtenus par l’utilisation des outils TObiAs et TGV. Cette ´etude est motiv´ee par le fait que TObiAs et TGV n’ont pas le comportement d´ecrit dans les chapitres 8 et 9 vis-`a-vis des relations existantes entre les diff´erents niveaux d’abstraction et des restrictions prises. Nous pouvons ainsi ´etudier les diff´erences entre les couvertures obtenues.

10.3.1 Les r´esultats obtenus

Nous ´etudions pour chaque sch´ema de test et leur ensemble de tests abstraits associ´es obtenu avec les outils TObiAs et TGV leurs diff´erents taux de couver-ture ainsi que les transitions couvertes (ou qui devraient ˆetre couvertes dans le cas des sch´emas de test). Comme nous avons une abstraction de la sp´ecification isomorphe `a la sp´ecification, cette abstraction comporte donc 201 transitions.

Le sch´ema de test 1 :

Ce sch´ema de test a une capacit´e de couverture de l’abstraction de la sp´ecification de 18%, soit 38 transitions. Nous avons produit 128 tests abstraits pour les 128 objectifs de test correspondant `a ce sch´ema. Ces tests abstraits couvrent pour leur part 50 transitions de la sp´ecification, soit 25% de celle-ci. Il y a donc une large diff´erence de couverture entre le sch´ema de test et les tests abstraits qui lui sont associ´es. En effet il n’y a que 11 transitions qui soient cou-vertes `a la fois par le sch´ema de test et les tests abstraits alors que 27 transitions ne le sont que par le sch´ema de test et 39 seulement par les tests abstraits.

Le sch´ema de test 2 :

L’outil CoPAS permet de d´eterminer que ce sch´ema de test a une capacit´e de couverture de l’abstraction de la sp´ecification de 87%, soit 176 transitions. Nous avions 252 objectifs de test associ´es `a ce sch´ema de test, soit 252 tests abstraits correspondant. Ces tests abstraits couvrent 130 transitions de la sp´ecification, soit 64,7% de celle ci. En mettant en correspondance les couvertures des tests abstraits et du sch´ema de test 2, on voit que toutes les transitions couvertes par les tests

abstraits sont aussi couvertes par le sch´ema de test. 47 transitions sont couvertes uniquement par le sch´ema de test.

Le sch´ema de test 4 :

Avec nos crit`eres de couverture, ce sch´ema de test couvre 165 transitions soit 82% de la sp´ecification abstraite. Les 48 tests abstraits correspondant `a ce sch´ema de test, g´en´er´es par TGV couvrent 101 transitions, soit 50% de la sp´ecification. Toutes ces transitions sont aussi couvertes par le sch´ema de test, 64 transitions ne sont couvertes que par le sch´ema de test.

Le tableau 10.4 r´esume les diff´erents r´esultats obtenus avec l’outil de couver-ture CoPAS pour les taux de couvercouver-ture des trois sch´emas de tests et de leurs tests abstraits associ´es sur la sp´ecification comportementale.

Taux de Taux de Intersection % couvert % couvert couverture couverture des seulement par seulement par du sch´ema des tests transitions le sch´ema les tests

de test abstraits couvertes de test abstraits

1 18% 25% 28.9% 13.4% 19.4%

2 87% 65% 73.9% 23.4% 0%

4 82% 50% 61.2% 31% 0%

TAB. 10.4 – Taux de couverture des sch´emas de test et des tests abstraits obtenus