Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parFelice Guillot Modifié depuis plus de 10 années
1
Test intégré de composants basé sur les contrats Apinya TANGKAWANIT
2
2 Introduction Le développement logiciel a besoin de la vérification et la validation qui permettent d'assurer la fonctionalité et la fiabilité du système. Le développement logiciel a besoin de la vérification et la validation qui permettent d'assurer la fonctionalité et la fiabilité du système. Le test est une des activités principales de ces processus. Le test est une des activités principales de ces processus. La notion de test embarqué et la contractualisation de composant ont été proposées La notion de test embarqué et la contractualisation de composant ont été proposées
3
3 Plan Introduction Introduction Validation au niveau des objets Validation au niveau des objets Bases du test objetBases du test objet Vers la conception pour la confianceVers la conception pour la confiance Validation des composants Validation des composants Built-in testBuilt-in test Composants hiérarchiquesComposants hiérarchiques Fractal Fractal Tests basés sur les contrats (Confract) Tests basés sur les contrats (Confract) Conclusion Conclusion
4
4 Validation au niveau des objets Bases du test objet Bases du test objet Type de testType de test Test unitaire Test unitaire Test d'intégration Test d'intégration Test système Test système Critères de testCritères de test Test boite noire ou fonctionnel Test boite noire ou fonctionnel Test boite blanche ou structurel Test boite blanche ou structurel
5
5 Validation au niveau des objets Bases du test objet Bases du test objet Test du logiciel orienté objetTest du logiciel orienté objet Junit [Beck,1999] : un framework adapté à la structure des objets trois notions principales TestCase TestSuite TestRunner
6
6 Validation au niveau des objets Bases du test objet Bases du test objet Test embarqué basé sur les contratsTest embarqué basé sur les contrats Précondition Précondition Postcondition Postcondition Invariant InvariantContrat contrats de base (ou syntaxique) contrats de base (ou syntaxique) contrats comportementaux contrats comportementaux contrats de synchronisation contrats de synchronisation contrats de qualité de service contrats de qualité de service Les préconditions limitent le champ des testsLes préconditions limitent le champ des tests Les postconditions sont les oraclesLes postconditions sont les oracles
7
7 Validation au niveau des objets Bases du test objet Bases du test objet Modèle des classes autotestables (Stclass) [Deveaux, 2001]Modèle des classes autotestables (Stclass) [Deveaux, 2001] Ce framework supporte la méthodologie de « design by Contract » et le test intégré pour Java. Ce framework supporte la méthodologie de « design by Contract » et le test intégré pour Java. Des contrats vérifiables à l'exécution en JavaDes contrats vérifiables à l'exécution en Java Organisation des testsOrganisation des tests Héritage et classes abstraitesHéritage et classes abstraites
8
8 Validation au niveau des objets Principe « Diviser pour régner » Vers la conception pour la confianceVers la conception pour la confiance
9
9 Validation au niveau des objets Vers la conception pour la confiance Vers la conception pour la confiance Vers des composants de confianceVers des composants de confiance Pour améliorer le logiciel, le développeur formalisme au maximum la spécification et le comportement de chaque composant « design for trustability »
10
10 Validation au niveau des objets Vers la conception pour la confiance Vers la conception pour la confiance La conception en triangleLa conception en triangle
11
11 Plan Introduction Introduction Validation au niveau des objets Validation au niveau des objets Bases du test objetBases du test objet Vers la conception pour la confianceVers la conception pour la confiance Validation des composants Validation des composants Built-in testBuilt-in test Composants hiérarchiquesComposants hiérarchiques Fractal Fractal Tests basés sur les contrats (Confract) Tests basés sur les contrats (Confract) Conclusion Conclusion
12
12 Validation des composants Composant : « toutes classes ou ensemble de classes prévu pour être réutilisé dans de nombreuses applications et pour lesquels un protocole d'emploi est explicitement défini » Composant : « toutes classes ou ensemble de classes prévu pour être réutilisé dans de nombreuses applications et pour lesquels un protocole d'emploi est explicitement défini » évolution de la notion de composant: évolution de la notion de composant: Interfaces fournies et requisesInterfaces fournies et requises Environnement d'exécution (middleware)Environnement d'exécution (middleware) Membranes et contrôleur explicitesMembranes et contrôleur explicites
13
13 Validation des composants Test embarqué (built-in test) [Groß, 2003] Test embarqué (built-in test) [Groß, 2003] Objectif:vérifier que l'environnement du composant ne change pas son fonctionnement originel.Objectif:vérifier que l'environnement du composant ne change pas son fonctionnement originel. basé sur la notion de contrat qui travaille sur le comportement des composants logiciels.basé sur la notion de contrat qui travaille sur le comportement des composants logiciels.
14
14 Validation des composants Test embarqué (built-in test) Test embarqué (built-in test) Composant testeurComposant testeur
15
15 Validation des composants Test embarqué (built-in test) Test embarqué (built-in test) Composant testableComposant testable
16
16 Validation des composants Le composant Le contrôleur Composants hiérarchiques Composants hiérarchiques Composant Fractal [Collet, 2004]Composant Fractal [Collet, 2004]
17
17 Validation des composants Composants hiérarchiques Composants hiérarchiques Confract [Collet, 2005] : propose une infrastructure pour appliquer lapproche contractuelle à Fractal.Confract [Collet, 2005] : propose une infrastructure pour appliquer lapproche contractuelle à Fractal. Types de contrat : Le contrat de bibliothèque Le contrat de bibliothèque Le contrat dinterface Le contrat dinterface Le contrat de composition externe Le contrat de composition externe Le contrat de composition interne Le contrat de composition interne
18
18 Validation des composants Composants hiérarchiques Composants hiérarchiques ConFract (suite)ConFract (suite) Les contrats sont dits : Les contrats sont dits : Ouvert : la spécification peut être modifiéeOuvert : la spécification peut être modifiée Fermé : la spécification est stableFermé : la spécification est stable Le contrat est composé une liste de: Spécifications Spécifications Fournies avec un langage d'assertion CCL- J(pre, post, rely, inv et guarantee).Fournies avec un langage d'assertion CCL- J(pre, post, rely, inv et guarantee). Participants Participants GarantGarant BénéficiaireBénéficiaire ContributeurContributeur
19
19 Validation des composants Composants hiérarchiques Composants hiérarchiques Exemple: un photocopieurExemple: un photocopieur Quatre composants: Scanner Driver Printer Finalizer
20
20 Validation des composants Composants hiérarchiquesComposants hiérarchiques Exemple: un photocopieur Exemple: un photocopieur
21
21 Validation des composants ComposantshiérarchiquesComposantshiérarchiques Exemple: un photocopieur Exemple: un photocopieur
22
22 Conclusion Cette étude a permis Cette étude a permis de caractériser les approches de test appliquées aux environnements à objets, en particulier, les tests embarqués basés sur les contrats,de caractériser les approches de test appliquées aux environnements à objets, en particulier, les tests embarqués basés sur les contrats, de voir l'intéret et les limites de STclass,de voir l'intéret et les limites de STclass, d'identifier certaines approches de test sur les composants, en particulier celle du « builtin-test »,d'identifier certaines approches de test sur les composants, en particulier celle du « builtin-test », de détailler le modèle de contrats Confract qui donne la possibilité d'étendre cette approche aux composants Fractal.de détailler le modèle de contrats Confract qui donne la possibilité d'étendre cette approche aux composants Fractal. La suite du stage consistera à développer le test embarqué sur Fractal et Confract, et à appliquer les principes du DfT au niveau des composants. La suite du stage consistera à développer le test embarqué sur Fractal et Confract, et à appliquer les principes du DfT au niveau des composants.
23
23 Questions?
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.