Intgration du test dans les composants logiciels - PowerPoint PPT Presentation

1 / 20
About This Presentation
Title:

Intgration du test dans les composants logiciels

Description:

Laboratoire d'Informatique de l'Universit de Pau et des pays de l'Adour (LIUPPA) ... Engineering (Italie), IESE(Allemagne), IVF (Su de), Labein (Espagne) ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 21
Provided by: nicolas108
Category:

less

Transcript and Presenter's Notes

Title: Intgration du test dans les composants logiciels


1
Intégration du test dans les composants logiciels
  • Nicolas BELLOIR et Jean-Michel BRUEL
  • Laboratoire dInformatique de lUniversité de Pau
    et des pays de lAdour (LIUPPA)

2
Introduction
  • Travaux financés par Component
  • Un constat
  • Importance de la CBSE, de la réutilisabilité et
    des COTS
  • Difficulté de la phase dassemblage
  • Intégration tardive des composants
  • Un objectif
  • Nécessité de fiabiliser la phase dassemblage
    HCSS01
  • Validation de lassemblage des composants la
    technologie BIT

3
Plan de lexposé
  • Introduction
  • Les principes de la technologie BIT
  • Une mise en uvre de la technologie BIT
  • Exemple de composant testable la pile
  • Conclusion

4
Le projet Component
  • Projet Européen nIST-20162
  • 7 partenaires Engineering (Italie),
    IESE(Allemagne), IVF (Suède), Labein (Espagne),
    Philips Electronics (Royaume Uni), Southampton
    Institute (Royaume Uni) et Université de Pau et
    des Pays de l'Adour (France)
  • 2,5 Millions d Euros
  • http //www.component-plus.org

5
Phases de test pour les composants
  • Test unitaire du composant (fournisseur)
  • Validation dans lenvironnement de développement
    (fournisseur)
  • Déploiement dans un environnement réel (client)
  • Réutilisation
  • COTS
  • Principe Test intégré dans les composants
    (Built-In Test)

6
Deux aspects envisagés Contract Testing Vs QoS
Contract Testing
C2
C1
Quality of Service
Système
7
Contract Testing
  • Relation de type Client - Serveur
  • Engagement formel entre un composant et ses
    clients (autres composants)
  • Description formelle du comportement
  • Vérification sémantique 2 aspects
  • Validité du support sur lequel le composant est
    déployé
  • Vérification du bon fonctionnement des services
    du composant par les clients

8
Comportement du composant
  • Modélisé à laide de la notion détats
  • Statecharts
  • Le Diagramme détat représente le comportement
  • Manipulation du composant à laide dinterfaces
    de test génériques
  • set_to_state ( String )
  • is_in_state ( String ) Boolean

9
Approche BIT
Testeur
10
Plan de lexposé
  • Introduction
  • Les principes de la technologie BIT
  • Une mise en uvre de la technologie BIT
  • Exemple de composant testable la pile
  • Conclusion

11
Une mise en uvre de la technologie BIT
12
Interfaces de Test
  • généricité des interfaces de test
  • execution_condition () Boolean
  • is_testable () Boolean
  • initialize_test () Boolean
  • Finalize_test () Boolean
  • Fournies par le BITC -gt Contrat de testabilité

13
Implémentation en Java
14
Plan de lexposé
  • Introduction
  • Les principes de la technologie BIT
  • Une mise en uvre de la technologie BIT
  • Exemple de composant testable la pile
  • Conclusion

15
LExemple de la Pile (1)
16
LExemple de la Pile (2)
public class stack public Object pop ()
throws Exception public void push (Object
o) throws Exception
17
LExemple de la Pile (3)
public class BIT_stack extends Stack implements
State_based_BIT_testability_contract
protected BIT_state _Empty // Etat ...
protected BIT_state_monitor _Stack // Automate
private void init_behavior() // Description
du comportement _Empty new
BIT_state ("Empty")
_Stack new BIT_state_monitor (_Empty.xor((
_OneElement).xor( _Full)), "Stack")
_Empty.inputState() // Point dentrée dans
lautomate public BIT_stack(int n)
throws Exception // Constructeur du composant
testable super()
init_behavior() ...
18
LExemple de la Pile (4)
public boolean isEmpty () // fonctionnalités
de test if(activeEntry -1) return
true return false public
boolean isFull() public boolean
is_in_state (String name) // implémentation
des interfaces de manipulation return
state_machine().is_in_state(name) public
void configuration_1() throws StatechartException
// méthode de configuration du test
_Stack.fires(_Empty, _Empty, true, this, "pop",
null) _Stack.used_up_with_recovery()

19
LExemple de la Pile (5)
BIT_stack bc new BIT_stack() // Instanciation
de la bit stack ... // Le résultat attendu est
une exception BIT_stack_exception_result bcer1
new BIT_stack_exception_result ("EmptyStackExcepti
on") // Création du test case State_based_BIT_te
st_case _sbbtc1 new State_based_BIT_test_case
(bc, "configuration_1", null, bcer1,
"Empty") // Lancement du test _sbbtc1.test() /
/ Interprétation du résultat (Failure ou
Success) System.err.println("Interpretation "
_sbbtc1.interpretation())
Testeur
20
Conclusion
  • La technologie BIT est
  • une aide à lintégration
  • une assistance au test (et non du test pur)
  • Evaluation de lapport via des projets
    industriels (en cours)
  • Une partie de la problématique dassemblage des
    composants
  • Orientation Prise en compte de lassemblage
    dès la phase danalyse
Write a Comment
User Comments (0)
About PowerShow.com